ECE 4510/5530 Microcontroller Applications Week 7

Size: px
Start display at page:

Download "ECE 4510/5530 Microcontroller Applications Week 7"

Transcription

1 45/553 Microcontroller Applications Week 7 Dr. Bradley J. Bazuin Associate Professor Department of Electrical and Computer Engineering College of Engineering and Applied Sciences

2 MISC Stuff Keypad revisited 25 2

3 Optional Required Reading Reminiscences of the VLSI Revolution: How a series of failures triggered a paradigm shift in digital design By Lynn Conway IEEE SOLID-STATE CIRCUITS MAGAZINE, vol.4, no.4, pp.8-3, Dec /553 3

4 Keypad Revisited 45/553 4

5 6-Button Keypad 42 Series by C&K Components, Inc. Web Site: Matrix connections based on which key is pressed Time multiplex pins -4 while reading pins 5-8 A keypad controller IC can be purchased to act as a peripheral 25 5

6 6-Button Keypad Series 96 by Grayhill, Inc. Web Site: Matrix connections based on which key is pressed Time multiplex pins -4 while reading pins 5-8 A keypad controller IC can be purchased to act as a peripheral 25 6

7 Text Keypad Circuitry PA7 PA6 PA5 PA4 Selected keys HCS2 MCU PA7, 4, 8, C,, 5, 9, D, 2, 6, A, E, and 3 and 7 and B and F Table 7.6 Sixteen-key keypad row selections outputs PA6 PA5 PA4 PA3 3 7 B F inputs PA2 PA A 9 E D PA 4 8 C K V CC 25 7 Figure 7.4 Sixteen-key keypad connected to the HCS2

8 Text Keypad Scanning Keypad scanning is usually performed row-by-row or column-by-column A 6-key keypad can be easily interfaced using any available 8-bit I/O port For the keypad application the upper four pins of the port should be configured for output and the lower four pins of the port should be configured for input (with pull-ups) The rows and columns of a keypad are simply conductors The keypad interface setup to HCS2 PortA is as shown in the next slide 25 8

9 Text Keypad Operation Whenever a key switch is pressed, the corresponding row and column are shorted together In order to distinguish the row and column of the key pressed Scan a zero through the columns If an input row becomes zero, the key pressed must be connected to the zeroed column. Figure it out to determine the key! PA7 PA6 PA5 PA4 Selected keys, 4, 8, C,, 5, 9, D, 2, 6, A, E, and 3 and 7 and B and F Table 7.6 Sixteen-key keypad row selections 25 9

10 Class Keypads 45/553

11 Keypad Input vs. Key Pressed (When PA7-PA not all s) Key PA7 PA6 PA5 PA4 PA3 PA2 PA PA Key Driven Outputs Inputs Value F E 9 9 A 6 B 3 C D D C E B F A 25

12 Text Keypad Code Function # define keypad PTA # define keypad_dir DDRA char getkey (void) char rmask, cmask, row, col; char temp, keycode; keypad_dir = xf; keypad = xf; while () rmask = xef; for (row = ; row < 4; row++) cmask = x; keypad = rmask; } } } // configure lower four pins for input // write upper four pins // select the current row for (col = ; col < 4; col++) if (!(keypad & cmask)) // key switch detected pressed delaybyms(); if(!(keypad & cmask)) // check the same key again keycode = row * 4 + col; if (keycode < ) return (x3 + keycode); else return (x37 + keycode); } } cmask = cmask << ; } rmask = (rmask << ) xf; // sequence of xef, xdf, xbf and x 7F 45/553 2

13 Rethinking the Function # define keypad PORTA # define keypad_dir DDRA char getkey(void) char key_array[4][4] =, 7, 4,, 5, 8, 5, 2, 4, 9, 6, 3, 3, 2,, }; char rmask, cmask, row, col; } cmask = xef; // init keypad scan for col = ; col < 4; col++) // rmask = x; keypad = cmask; // Test the th row for (row = ; row < 4; row++) if (!(keypad & rmask)) // key switch detected pressed keypad = xff; // standby keypad values return (key_array[col][row]); } rmask = rmask << ; } cmask = (cmask << ) xf; // sequence of xef, xdf, xbf and x 7F } keypad = xff; // standby keypad values return (xff); 45/553 3

14 Keypad Main Code If getkey() is called If a key is pressed, the value If a key is not pressed, xff There is no debouncing Requirements Debounce delay checking Create some type of count with a threshold test Only accept key when it is released Place the key value in a key-press buffer to be operated on Save the value at a pointer location to an array Provide a status flag of the keypad operational state Key being pressed, not yet valid Key being pressed, delay is long enough Key value received and is valid Initialize interface and all variables as needed 45/553 4

15 Keypad Main Code while() // Do something here asm("nop"); // Key scanning designed for every while loop // Looking for the key to be pressed and released // if(check_keypad_flag) current_key = getkey(); // retrieve a key value if(last_key <> xff) key_count++; // count the key press loops key_status = x; // status is x invalid press if(key_count>key_thresh) // accept if greater key_status = x2; // status is x2 valid press if(current_key == xff) key_status = x3; // status is x3 saved value *key_ptr++ = last_key; } } } else key_count = ; key_status = x; } last_key = current_key; } } } 45/553 5

16 Keypad Main Code Misc # define keypad PORTA # define keypad_dir DDRA # define KEY_THRESH void main(void) int char char char char int ii; check_keypad_flag; key_status, last_key, current_key; key_input[]; *key_ptr; key_count; 45/553 COPCTL=x; asm("sei"); // Initilize keypad and key variables keypad_init(); // set up port pins last_key = xff; key_count = ; key_status = x; key_ptr = &key_input[]; for(ii=; ii<;ii++) // initilize key_input key_input[ii]=; } asm("cli"); 6

17 Rethinking Code Although you have completed previous labs. It may be useful to review what has previously done so that is more useful for current or future labs. Is your keypad useful for inputting a string of numbers or hex digits? DAC output defined by keypad. If the four function calculator is Project #2. Can similar concepts be applied to the 5x7 display? 45/553 7

Keypad Interfacing. Microcomputer Architecture and Interfacing Colorado School of Mines Professor William Hoff

Keypad Interfacing. Microcomputer Architecture and Interfacing Colorado School of Mines Professor William Hoff Keypad Interfacing Typical keypads have 12 or 16 buttons Keypad A mechanical keypad simply consists of a set of vertical wires (one for each column) and a set of horizontal wires (one for each row) When

More information

ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class)

ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class) ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class) Your homework should be neat and professional looking. You will loose points if your HW is not properly

More information

Microprocessors & Interfacing

Microprocessors & Interfacing Lecture Overview Microprocessors & Interfacing Input/Output Devices Input devices Input switches Basics of switches Keypads Output devices LCD Lecturer : Dr. Annie Guo S2, 2008 COMP9032 Week8 1 S2, 2008

More information

Input/Output Devices. Lecturer: Sri Parameswaran Notes by: Annie Guo

Input/Output Devices. Lecturer: Sri Parameswaran Notes by: Annie Guo Input/Output Devices Lecturer: Sri Parameswaran Notes by: Annie Guo 1 Lecture Overview Input devices Input switches Basics of switches Keypads Output devices LCD 2 Input Switches Most basic binary input

More information

Real Time Operating Systems Application Board Details

Real Time Operating Systems Application Board Details Real Time Operating Systems Application Board Details Hardware Interface All labs involve writing a C program to generate an interface between a PC and an external Multi-Applications board. A 40-way ribbon

More information

Texas Instruments Microcontroller HOW-TO GUIDE Interfacing Keypad with MSP430F5529

Texas Instruments Microcontroller HOW-TO GUIDE Interfacing Keypad with MSP430F5529 Texas Instruments Microcontroller HOW-TO GUIDE Interfacing Keypad with MSP430F5529 Contents at a Glance PS PRIMER MSP430 kit... 3 Keypad... 4 Interfacing keypad... 4 Interfacing keypad with MSP430F5529...

More information

ECE 4510/5530 Microcontroller Applications Chapter 7

ECE 4510/5530 Microcontroller Applications Chapter 7 ECE 450/5530 Microcontroller Applications Chapter 7 Dr. Bradley J. Bazuin Associate Professor Department of Electrical and Computer Engineering College of Engineering and Applied Sciences Chapter 7: Parallel

More information

SC1602LC 16x2 Large Characters RS232 LCD Module. User s Manual. Large Viewing Area 99mm x 24mm. Large Character Size. 4.84mm x 9.66mm.

SC1602LC 16x2 Large Characters RS232 LCD Module. User s Manual. Large Viewing Area 99mm x 24mm. Large Character Size. 4.84mm x 9.66mm. Large Viewing Area 99mm x 24mm Large Character Size 4.84mm x 9.66mm Features 16x2 Large Characters LCD RS232 Interface Simple Serial Command Wide Range Voltage Operation ( 9-15V ) 8 User s Defined Characters

More information

AN10184 Connecting a keyboard to the Philips LPC9xx microcontroller

AN10184 Connecting a keyboard to the Philips LPC9xx microcontroller CIRCUITS ITEGRATED CIRCUITS ABSTRACT This application note demonstrates how to connect a keypad matrix to the LPC9xx microcontroller family from Philips Semiconductors. It explains a software example which

More information

COMP2121: Microprocessors and Interfacing. I/O Devices (II)

COMP2121: Microprocessors and Interfacing. I/O Devices (II) COMP2121: Microprocessors and Interfacing I/O Devices (II) http://www.cse.unsw.edu.au/~cs2121 Lecturer: Hui Wu Session 2, 2017 1 Overview Keyboard LCD (Liquid Crystal Display) 2 2 Input Switches (1/2)

More information

ECE 4510/5530 Microcontroller Applications Week 10

ECE 4510/5530 Microcontroller Applications Week 10 ECE 4510/5530 Microcontroller Applications Week 10 Dr. Bradley J. Bazuin Associate Professor Department of Electrical and Computer Engineering College of Engineering and Applied Sciences ECE 4510/5530

More information

MICROCONTROLLER SYSTEM CONTROL DESIGN JON PRITCHARD SCOTT VON THUN

MICROCONTROLLER SYSTEM CONTROL DESIGN JON PRITCHARD SCOTT VON THUN MICROCONTROLLER SYSTEM CONTROL DESIGN JON PRITCHARD SCOTT VON THUN Problem Statement Create a simple feedback environment that can be used to demonstrate various feedback control systems using a microcontroller

More information

Input/Output Ports and Interfacing

Input/Output Ports and Interfacing Input/Output Ports and Interfacing ELEC 330 Digital Systems Engineering Dr. Ron Hayne Images Courtesy of Ramesh Gaonkar and Delmar Learning Basic I/O Concepts Peripherals such as LEDs and keypads are essential

More information

Embedded Controller Programming II. I/O Device Programming in C Part 1: Input and Interrupts

Embedded Controller Programming II. I/O Device Programming in C Part 1: Input and Interrupts Discovery.com Embedded Controller Programming II I/O Device Programming in C Part 1: Input and Interrupts Ken Arnold Copyright (c)2006 Ken Arnold 051221 1 Overview Basic Input Devices Switch Input Matrix

More information

Introduction to the MC9S12 Hardware Subsystems

Introduction to the MC9S12 Hardware Subsystems Setting and clearing bits in C Using pointers in C o Program to count the number of negative numbers in an area of memory Introduction to the MC9S12 Hardware Subsystems o The MC9S12 timer subsystem Operators

More information

Project 15 - Reading a keypad with the Raspberry Pi

Project 15 - Reading a keypad with the Raspberry Pi Project 15 - Reading a keypad with the Raspberry Pi Outline This application note describes how to read a 3 x 4 data keypad using the Raspberry Pi. Any of the Raspberry Pi models can be used including

More information

Lab #3: Keypad Scanning in C Week of 11 February 2019

Lab #3: Keypad Scanning in C Week of 11 February 2019 ECE271: Microcomputer Architecture and Applications University of Maine Lab #3: Keypad Scanning in C Week of 11 February 2019 Goals 1. Be familiar with keypad scanning algorithms. 2. Understand software

More information

Layman definition: Gadgets and devices Technical definition: Self-controlled devices Usually, such systems consist of I/O (input/output) devices such

Layman definition: Gadgets and devices Technical definition: Self-controlled devices Usually, such systems consist of I/O (input/output) devices such Layman definition: Gadgets and devices Technical definition: Self-controlled devices Usually, such systems consist of I/O (input/output) devices such as LCDs, keypads, etc. and other devices like EEPROM

More information

AN1239. HC05 MCU Keypad Decoding Techniques Using the MC68HC705J1A. Introduction

AN1239. HC05 MCU Keypad Decoding Techniques Using the MC68HC705J1A. Introduction Order this document by /D Rev. 1.0 HC05 MCU Keypad Decoding Techniques Using the MC68HC705J1A By David Yoder CSIC Applications Introduction This application note demonstrates the use of a matrix keypad

More information

Administrivia. ECE/CS 5780/6780: Embedded System Design. Port Pull Configuration. Interfacing a Switch to a Computer

Administrivia. ECE/CS 5780/6780: Embedded System Design. Port Pull Configuration. Interfacing a Switch to a Computer Administrivia ECE/CS 5780/6780: Embedded System Design Scott R. Little Give yourself enough time on Lab 3 prelab. Lecture 6: Debouncing and Matrix Keypads Scott R. Little (Lecture 6: Keypads) ECE/CS 5780/6780

More information

ECE 4510/5530 Microcontroller Applications Week 9

ECE 4510/5530 Microcontroller Applications Week 9 ECE 45/553 Microcontroller Applications Week 9 Dr. Bradley J. Bazuin Associate Professor Department of Electrical and Computer Engineering College of Engineering and Applied Sciences Lab 7 & 8 Elements

More information

ADSmartIO Driver Specification for Windows CE

ADSmartIO Driver Specification for Windows CE Version: 1.0 ADS document #110110-4004A Last Saved: 12/21/00 2:51 PM Applied Data Systems Inc. 9140 Guilford Road, Columbia, MD 21046 301-490-4007 Driver Change Log Version Release # Date By Changes Draft

More information

Hello and welcome to this Renesas Interactive module that covers the Independent watchdog timer found on RX MCUs.

Hello and welcome to this Renesas Interactive module that covers the Independent watchdog timer found on RX MCUs. Hello and welcome to this Renesas Interactive module that covers the Independent watchdog timer found on RX MCUs. 1 This course covers specific features of the independent watchdog timer on RX MCUs. If

More information

Magic 8 Ball. Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name

Magic 8 Ball. Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name MPS Magic 8 Ball Lab Exercise Magic 8 Ball Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name Notes: You must work on this assignment with your partner. Hand in a printer

More information

CS/ECE 5780/6780: Embedded System Design

CS/ECE 5780/6780: Embedded System Design CS/ECE 5780/6780: Embedded System Design John Regehr Lecture 2: 68HC12 Architecture & Lab 1 Introduction Duff s Device void foo (int x, int *y, int *z) { switch (x % 8) { case 0: do { *y++ = *z++; case

More information

ELEC 3040/3050 Lab 5. Matrix Keypad Interface Using Parallel I/O

ELEC 3040/3050 Lab 5. Matrix Keypad Interface Using Parallel I/O ELEC 3040/3050 Lab 5 Matrix Keypad Interface Using Parallel I/O Goals of this lab exercise Control a real device with the microcontroller Coordinate parallel I/O ports to control and access a device Implement

More information

ECE2049: Embedded Computing in Engineering Design A Term Fall Lecture #8: Making it work: LEDs, Buttons & Keypad

ECE2049: Embedded Computing in Engineering Design A Term Fall Lecture #8: Making it work: LEDs, Buttons & Keypad ECE2049: Embedded Computing in Engineering Design A Term Fall 2018 Lecture #8: Making it work: LEDs, Buttons & Keypad Reading for Today: Users Guide Ch 12 Reading for Next Class: Review all reading, notes,

More information

ELEC 3040/3050 Lab 5. Matrix Keypad Interface Using Parallel I/O

ELEC 3040/3050 Lab 5. Matrix Keypad Interface Using Parallel I/O ELEC 3040/3050 Lab 5 Matrix Keypad Interface Using Parallel I/O Goals of this lab exercise Control a real device with the microcontroller Coordinate parallel I/O ports to control and access a device Implement

More information

Programming and Interfacing LCD Key Switches

Programming and Interfacing LCD Key Switches Programming and Interfacing LCD Key Switches Pottery House, Pottery Road, Dun Laoghaire, Co. Dublin, Ireland. Tel: +353-1-2350279 Fax: +353-1-2350361 Am Gneisenauflöz 6, 66538 Neunkirchen, Germany. Tel:

More information

Introduction to Micro-controllers. Anurag Dwivedi

Introduction to Micro-controllers. Anurag Dwivedi Introduction to Micro-controllers Anurag Dwivedi Lecture Structure Things to be covered today.. What is a micro-controller? What are the basic features of a microcontroller? How to input and output from

More information

Chapter 9. Input/Output (I/O) Ports and Interfacing. Updated: 3/13/12

Chapter 9. Input/Output (I/O) Ports and Interfacing. Updated: 3/13/12 Chapter 9 Input/Output (I/O) Ports and Interfacing Updated: 3/13/12 Basic Concepts in I/O Interfacing and PIC18 I/O Ports (1 of 2) I/O devices (or peripherals) such as LEDs and keyboards are essential

More information

RTC Interface 89C51 DS M. Krishna Kumar MAM/M7/LU17/V1/ Vcc VCC 5 SDA P1.0 6 SCL P KHz 3 BAT 3.

RTC Interface 89C51 DS M. Krishna Kumar MAM/M7/LU17/V1/ Vcc VCC 5 SDA P1.0 6 SCL P KHz 3 BAT 3. RTC Interface 89C51 Vcc P1.0 10k 10k 5 SDA DS 1307 8 VCC P1.1 6 SCL X1 1 + 3 BAT X2 2 32.768KHz - 3.6V 4 GND INTB\SQW 7 M. Krishna Kumar MAM/M7/LU17/V1/2004 1 RTC Interface contd. DS 1307 is a real time

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Stefan Kowalewski, 4. November 25 Introduction to Embedded Systems Part 2: Microcontrollers. Basics 2. Structure/elements 3. Digital I/O 4. Interrupts 5. Timers/Counters Introduction to Embedded Systems

More information

LCD. Configuration and Programming

LCD. Configuration and Programming LCD Configuration and Programming Interfacing and Programming with Input/Output Device: LCD LCD (liquid crystal display) is specifically manufactured to be used with microcontrollers, which means that

More information

Laboratory 1 Introduction to the Arduino boards

Laboratory 1 Introduction to the Arduino boards Laboratory 1 Introduction to the Arduino boards The set of Arduino development tools include µc (microcontroller) boards, accessories (peripheral modules, components etc.) and open source software tools

More information

Dragon12 LCD Displays Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) Dragon12 LCD Display. The Dragon12 board has a 16 character x 2 line display

Dragon12 LCD Displays Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) Dragon12 LCD Display. The Dragon12 board has a 16 character x 2 line display Dragon12 LCD Displays Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) o Using the Dragon12 LCD display Dragon12 LCD Display The Dragon12 board has a 16 character x 2 line display Each character is a 5x7

More information

LCD AND KEYBOARD INTERFACING

LCD AND KEYBOARD INTERFACING LCD AND KEYBOARD The 8051 Microcontroller and Embedded Systems: Using Assembly and C Mazidi, Mazidi and McKinlay Chung-Ping Young 楊中平 Home Automation, Networking, and Entertainment Lab Dept. of Computer

More information

ARM HOW-TO GUIDE Interfacing Keypad with LPC2148 ARM

ARM HOW-TO GUIDE Interfacing Keypad with LPC2148 ARM ARM HOW-TO GUIDE Interfacing Keypad with LPC2148 ARM Contents at a Glance ARM7 LPC2148 Primer Board... 3 Keypad... 3 Interfacing keypad... 4 Interfacing keypad with LPC2148... 6 Pin Assignment with LPC2148...

More information

ECE3120: Computer Systems Chapter 7: Interfacing I/O Devices Lab-Class

ECE3120: Computer Systems Chapter 7: Interfacing I/O Devices Lab-Class ECE32: Computer Systems Chapter 7: Interfacing I/O Devices Lab-Class Manjeera Jeedigunta http://blogscaetntechedu/msjeedigun2 Email: msjeedigun2@tntechedu Tel: 93-372-68, Prescott Hall 2 Today Interfacing

More information

ECE 353 Lab 4. General MIDI Explorer. Professor Daniel Holcomb Fall 2015

ECE 353 Lab 4. General MIDI Explorer. Professor Daniel Holcomb Fall 2015 ECE 353 Lab 4 General MIDI Explorer Professor Daniel Holcomb Fall 2015 Where are we in Course Lab 0 Cache Simulator in C C programming, data structures Cache architecture and analysis Lab 1 Heat Flow Modeling

More information

F²MC-16FX FAMILY MB96340 KEY MATRIX INTERFACE USING I/O PORT 16-BIT MICROCONTROLLER APPLICATION NOTE. Fujitsu Microelectronics Europe Application Note

F²MC-16FX FAMILY MB96340 KEY MATRIX INTERFACE USING I/O PORT 16-BIT MICROCONTROLLER APPLICATION NOTE. Fujitsu Microelectronics Europe Application Note Fujitsu Microelectronics Europe Application ote MCU-A-300238-E-V12 F²MC-16FX FAMIL 16-BIT MICROCOTROLLER MB96340 KE MATRIX ITERFACE APPLICATIO OTE Revision History Revision History Date Issue 2007-04-16

More information

Pager Controlled Universal VCR Programmer (PCUVP) Senior Design Project By Jeff Shudark Fall Advising Professor: Dr.

Pager Controlled Universal VCR Programmer (PCUVP) Senior Design Project By Jeff Shudark Fall Advising Professor: Dr. Pager Controlled Universal VCR Programmer (PCUVP) Senior Design Project By Jeff Shudark Fall 1996 Advising Professor: Dr. Keith Doty INTRODUCTION The goal of this project was to devise a way to program

More information

App Note Application Note: State-Driven Control of a dpasp using a Microchip PIC.

App Note Application Note: State-Driven Control of a dpasp using a Microchip PIC. Rev: 1.0.1 Date: 8 th July 2009 App Note - 207 Application Note: State-Driven Control of a dpasp using a Microchip PIC. This application note contains a total 3 files, if you have only this pdf text document,

More information

ECE 372 Microcontroller Design

ECE 372 Microcontroller Design !! "! E.g. Port A, Port B "! Used to interface with many devices!! Switches!! LEDs!! LCD!! Keypads!! Relays!! Stepper Motors "! Interface with digital IO requires us to connect the devices correctly and

More information

The IIC interface based on ATmega8 realizes the applications of PS/2 keyboard/mouse in the system

The IIC interface based on ATmega8 realizes the applications of PS/2 keyboard/mouse in the system Available online at www.sciencedirect.com Procedia Engineering 16 (2011 ) 673 678 International Workshop on Automobile, Power and Energy Engineering The IIC interface based on ATmega8 realizes the applications

More information

Microprocessor and Microcontroller question bank. 1 Distinguish between microprocessor and microcontroller.

Microprocessor and Microcontroller question bank. 1 Distinguish between microprocessor and microcontroller. Course B.E(EEE) Batch 2015 Semester V Subject code subject Name UAEE503 Microprocessor and Microcontroller question bank UNIT-1 Architecture of a Microprocessor PART-A Marks: 2 1 Distinguish between microprocessor

More information

AN1745. Interfacing the HC705C8A to an LCD Module By Mark Glenewinkel Consumer Systems Group Austin, Texas. Introduction

AN1745. Interfacing the HC705C8A to an LCD Module By Mark Glenewinkel Consumer Systems Group Austin, Texas. Introduction Order this document by /D Interfacing the HC705C8A to an LCD Module By Mark Glenewinkel Consumer Systems Group Austin, Texas Introduction More and more applications are requiring liquid crystal displays

More information

Dragon12 LCD Displays Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) Dragon12 LCD Display. The Dragon12 board has a 16 character x 2 line display

Dragon12 LCD Displays Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) Dragon12 LCD Display. The Dragon12 board has a 16 character x 2 line display Dragon12 LCD Displays Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) o Using the Dragon12 LCD display Dragon12 LCD Display The Dragon12 board has a 16 character x 2 line display Each character is a 5x7

More information

*** All this without using a single GPIO digital I/O pin ***

*** All this without using a single GPIO digital I/O pin *** SF Innovations Ltd Custard Pi 4-8 Digital I/O card using I2C for the Raspberry Pi GPIO User Instructions (22nd April 2016) Contents Introduction CE Compliance and Safety Information Circuit Description

More information

EE 308 Spring 2013 The MC9S12 A/D Converter

EE 308 Spring 2013 The MC9S12 A/D Converter The MC9S12 A/D Converter o Single Channel vs Multiple Channels o Singe Conversion vs Multiple Conversions o MC9S12 A/C Registers o Using the MC9S12 A/D Converter o A C program to use the MC9S12 A/D Converter

More information

Fujitsu Microelectronics Europe Application Note MCU-AN E-V10 F²MC-FR FAMILY 32-BIT MICROCONTROLLER MB91460 RELOAD TIMER APPLICATION NOTE

Fujitsu Microelectronics Europe Application Note MCU-AN E-V10 F²MC-FR FAMILY 32-BIT MICROCONTROLLER MB91460 RELOAD TIMER APPLICATION NOTE Fujitsu Microelectronics Europe Application Note MCU-AN-300060-E-V10 F²MC-FR FAMILY 32-BIT MICROCONTROLLER MB91460 RELOAD TIMER APPLICATION NOTE Revision History Revision History Date 2008-03-26 V1.0,

More information

Software debouncing of buttons

Software debouncing of buttons Software debouncing of buttons snigelen February 5, 2015 1 Introduction Connecting a button as an input to a micro-controller is a relatively easy task, but there are some problems. The main problem is

More information

ARM HOW-TO GUIDE Interfacing Switch with LPC2148 ARM

ARM HOW-TO GUIDE Interfacing Switch with LPC2148 ARM ARM HOW-TO GUIDE Interfacing Switch with LPC48 ARM Contents at a Glance ARM7 LPC48 Primer Board... 3 Switch... 3 Interfacing Switch... 4 Interfacing Switch with LPC48... 5 Pin Assignment with LPC48...

More information

Write LED display data, in accordance with the address from the display from low to high, from low to high data byte operation.

Write LED display data, in accordance with the address from the display from low to high, from low to high data byte operation. The register stores transferred from an external device via the serial interface to the TM1637 data address 00H-05H bytes of six units, respectively, and SGE and GRID pin chip LED lights are connected

More information

C Language Programming, Interrupts and Timer Hardware

C Language Programming, Interrupts and Timer Hardware C Language Programming, Interrupts and Timer Hardware In this sequence of three labs, you will learn how to write simple C language programs for the MC9S12 microcontroller, and how to use interrupts and

More information

Lab Overview. Lab Details. ECEN 4613/5613 Embedded System Design Week #7 Spring 2005 Lab #4 2/23/2005

Lab Overview. Lab Details. ECEN 4613/5613 Embedded System Design Week #7 Spring 2005 Lab #4 2/23/2005 ECEN 4613/5613 Embedded System Design Week #7 Spring 2005 Lab #4 2/23/2005 Lab Overview In this lab assignment, you will do the following: Add a serial EEPROM and an LCD to the hardware developed in Labs

More information

Microcontroller Introduction

Microcontroller Introduction Microcontroller Introduction Embedded Systems 2-1 Data Formats for the Renesas Microcontroller Byte Word 8 bits signed & unsigned unsigned range 0 to 255 unsigned char a; 16 bits signed & unsigned unsigned

More information

BV4218. I2C-LCD & Keypad. Product specification. December 2008 V0.a. ByVac 2006 ByVac Page 1 of 9

BV4218. I2C-LCD & Keypad. Product specification. December 2008 V0.a. ByVac 2006 ByVac Page 1 of 9 Product specification December 2008 V0.a ByVac 2006 ByVac Page 1 of 9 Contents 1. Introduction...3 2. Features...3 3. Electrical Specification...3 4. I2C set...4 5. The LCD Set...5 5.1. 1...5 5.2. 2...5

More information

Dragon12 LCD Displays Huang Sections 7.8 Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) ATD_10B8C Block User Guide. Dragon12 LCD Display

Dragon12 LCD Displays Huang Sections 7.8 Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) ATD_10B8C Block User Guide. Dragon12 LCD Display Dragon12 LCD Displays Huang Sections 7.8 Hantronix_CLD.PDF data sheet (Dragon12 CD-ROM) ATD_10B8C Block User Guide o Using the Dragon12 LCD display Dragon12 LCD Display The Dragon12 board has a 16 character

More information

ECE 4510/5530 Microcontroller Applications Week 12

ECE 4510/5530 Microcontroller Applications Week 12 Microcontroller Applications Week 12 Dr. Bradley J. Bazuin Associate Professor Department of Electrical and Computer Engineering College of Engineering and Applied Sciences Continuing Information PING

More information

C Language Programming, Interrupts and Timer Hardware

C Language Programming, Interrupts and Timer Hardware C Language Programming, Interrupts and Timer Hardware In this sequence of three labs, you will learn how to write simple C language programs for the MC9S12 microcontroller, and how to use interrupts and

More information

Chapter 11: Interrupt On Change

Chapter 11: Interrupt On Change Chapter 11: Interrupt On Change The last two chapters included examples that used the external interrupt on Port C, pin 1 to determine when a button had been pressed. This approach works very well on most

More information

Integer Representation

Integer Representation Integer Representation Announcements assign0 due tonight assign1 out tomorrow Labs start this week SCPD Note on ofce hours on Piazza Will get an email tonight about labs Goals for Today Introduction to

More information

Interfacing Z8 Encore! XP MCUs with an I 2 C-Based Character LCD

Interfacing Z8 Encore! XP MCUs with an I 2 C-Based Character LCD Application Note Interfacing Z8 Encore! XP MCUs with an I 2 C-Based Character LCD AN014902-1207 Abstract This Application Note describes APIs for interfacing one or more I 2 C-based character LCDs with

More information

ECE2049-E18 Lecture 6 Notes 1. ECE2049: Embedded Computing in Engineering Design E Term Lecture #6: Exam Review

ECE2049-E18 Lecture 6 Notes 1. ECE2049: Embedded Computing in Engineering Design E Term Lecture #6: Exam Review ECE2049-E18 Lecture 6 Notes 1 ECE2049: Embedded Computing in Engineering Design E Term 2018 Lecture #6: Exam Review Administrivia Exam 1: Next Tuesday (6/5) HW4: Short assignment, due Tuesday Lab 1: Due

More information

EE 308 Spring A software delay. To enter a software delay, put in a nested loop, just like in assembly.

EE 308 Spring A software delay. To enter a software delay, put in a nested loop, just like in assembly. More on Programming the 9S12 in C Huang Sections 5.2 through 5.4 Introduction to the MC9S12 Hardware Subsystems Huang Sections 8.2-8.6 ECT_16B8C Block User Guide A summary of MC9S12 hardware subsystems

More information

CprE 288 Introduction to Embedded Systems (Timers/Input Capture) Instructors: Dr. Phillip Jones

CprE 288 Introduction to Embedded Systems (Timers/Input Capture) Instructors: Dr. Phillip Jones CprE 288 Introduction to Embedded Systems (Timers/Input Capture) Instructors: Dr. Phillip Jones 1 Announcements HW 4, Due Wed 6/13 Quiz 5 (15 min): Wed 6/13, Textbook reading: Section 9.1, 9.2 (your one-side

More information

ECE 4510 Introduction to Microprocessors. Software Review

ECE 4510 Introduction to Microprocessors. Software Review ECE 4510 Introduction to Microprocessors Software Review Dr. Bradley J. Bazuin Associate Professor Department of Electrical and Computer Engineering College of Engineering and Applied Sciences Modern Computers

More information

Bachelor of Engineering in Computer and Electronic Engineering

Bachelor of Engineering in Computer and Electronic Engineering Bachelor of Engineering in Computer and Electronic Engineering Computer Engineering 1 Year 2 Semester 3 Autumn 08 Niall O Keeffe Instructions to Candidates: - 2 hours duration Answer 4 out of 6 questions.

More information

Department of Electronics and Instrumentation Engineering Question Bank

Department of Electronics and Instrumentation Engineering Question Bank www.examquestionpaper.in Department of Electronics and Instrumentation Engineering Question Bank SUBJECT CODE / NAME: ET7102 / MICROCONTROLLER BASED SYSTEM DESIGN BRANCH : M.E. (C&I) YEAR / SEM : I / I

More information

F²MC-8FX FAMILY MB95200H/210H SERIES HOW TO USE DBG PIN 8-BIT MICROCONTROLLER APPLICATION NOTE

F²MC-8FX FAMILY MB95200H/210H SERIES HOW TO USE DBG PIN 8-BIT MICROCONTROLLER APPLICATION NOTE Fujitsu Microelectronics (Shanghai) Co., Ltd. Application Note MCU-AN-500009-E-10 F²MC-8FX FAMILY 8-BIT MICROCONTROLLER MB95200H/210H SERIES HOW TO USE DBG PIN APPLICATION NOTE Revision History Revision

More information

C:\Users\jacob\Documents\MtSAC\ELEC74 Mt SAC - chipkit\homework Sheets.docx

C:\Users\jacob\Documents\MtSAC\ELEC74 Mt SAC - chipkit\homework Sheets.docx ELEC 74 Worksheet 1 Logic Gate Review 1. Draw the truth table and schematic symbol for: a. An AND gate b. An OR gate c. An XOR gate d. A NOT gate ELEC74 Worksheet 2 (Number Systems) 1. Convert the following

More information

Interrupt vectors for the 68HC912B32. The interrupt vectors for the MC9S12DP256 are located in memory from 0xFF80 to 0xFFFF.

Interrupt vectors for the 68HC912B32. The interrupt vectors for the MC9S12DP256 are located in memory from 0xFF80 to 0xFFFF. Interrupts The Real Time Interrupt Interrupt vectors for the 68HC912B32 The interrupt vectors for the MC9S12DP256 are located in memory from 0xFF80 to 0xFFFF. These vectors are programmed into Flash EEPROM

More information

EE 308 Spring A software delay

EE 308 Spring A software delay A software delay To enter a software delay, put in a nested loop, just like in assembly. Write a function delay(num) which will delay for num milliseconds void delay(unsigned int num) volatile unsigned

More information

Part 1 Connecting the Chips In your parser project add a new tab named "LCD.h" Copy this code into that tab //1// #include <QuickTypes.

Part 1 Connecting the Chips In your parser project add a new tab named LCD.h Copy this code into that tab //1// #include <QuickTypes. Lab 10 - Serial Peripheral Interface/ LCD Display In this lab you are going to learn about how to use LCD displays and practice reading some datasheets. Part 1 Connecting the Chips In your parser project

More information

Using Input Capture on the 9S12

Using Input Capture on the 9S12 The 9S12 Input Capture Function Huang Sections 8.1-8.5 ECT_16B8C Block User Guide o Interrupts on the 9S12 o Capturing the time of an external event o The 9S12 Input Capture Function o Registers used to

More information

F²MC-8FX FAMILY MB95200H/210H SERIES HOW TO USE DBG PIN 8-BIT MICROCONTROLLER APPLICATION NOTE

F²MC-8FX FAMILY MB95200H/210H SERIES HOW TO USE DBG PIN 8-BIT MICROCONTROLLER APPLICATION NOTE Fujitsu Microelectronics (Shanghai) Co., Ltd Application Note MCU-AN-500009-E-10 F²MC-8FX FAMILY 8-BIT MICROCONTROLLER MB95200H/210H SERIES HOW TO USE DBG PIN APPLICATION NOTE Revision History Revision

More information

Matrix Manipulation Using High Computing Field Programmable Gate Arrays

Matrix Manipulation Using High Computing Field Programmable Gate Arrays Matrix Manipulation Using High Computing Field Programmable Gate Arrays 1 Mr.Rounak R. Gupta, 2 Prof. Atul S. Joshi Department of Electronics and Telecommunication Engineering, Sipna College of Engineering

More information

Interconnects, Memory, GPIO

Interconnects, Memory, GPIO Interconnects, Memory, GPIO Dr. Francesco Conti f.conti@unibo.it Slide contributions adapted from STMicroelectronics and from Dr. Michele Magno, others Processor vs. MCU Pipeline Harvard architecture Separate

More information

8051 Microcontroller

8051 Microcontroller 8051 Microcontroller The 8051, Motorola and PIC families are the 3 leading sellers in the microcontroller market. The 8051 microcontroller was originally developed by Intel in the late 1970 s. Today many

More information

Lab 3 LCD Mar

Lab 3 LCD Mar Lab 3 LCD Mar. 2016 1 Objective 1. To be familiar with advanced output devices that can be connected to microcontroller. 2. To be able to work with many input/output devices together. Alphanumeric LCD

More information

ECE 4510/5530 Microcontroller Applications Week 6

ECE 4510/5530 Microcontroller Applications Week 6 ECE 4510/5530 Microcontroller Applications Week 6 Dr. Bradley J. Bazuin Associate Professor Department of Electrical and Computer Engineering College of Engineering and Applied Sciences Lab 5 Element Hardware

More information

LED Pacman. Final Project Report December 4, 2017 E155. Kai Kaneshina and Gabriel Quiroz. Abstract :

LED Pacman. Final Project Report December 4, 2017 E155. Kai Kaneshina and Gabriel Quiroz. Abstract : LED Pacman Final Project Report December 4, 2017 E155 Kai Kaneshina and Gabriel Quiroz Abstract : Pacman is a classic arcade game from the 1980s. Our goal was to implement a modified version of this game

More information

The MC9S12 Timer Output Compare Function Making an event happen at specific time on the HC12 The MC9S12 Output Compare Function

The MC9S12 Timer Output Compare Function Making an event happen at specific time on the HC12 The MC9S12 Output Compare Function The MC9S12 Timer Output Compare Function Making an event happen at specific time on the HC12 The MC9S12 Output Compare Function o Registers used to enable the output compare function o Using the MC9S12

More information

Using the HT16K33 in DVD Player Panel Applications

Using the HT16K33 in DVD Player Panel Applications Using the HT16K33 in DVD Player Panel Applications D/N:AN0363E Introduction The HT16K33 is a memory mapping and multi-function LED controller driver. The maximum display capacity in the device is 128 dots

More information

Programming the keys

Programming the keys 22 Pride leads only to shame. Programming the keys 22.1 Secrets 22.1.1 Keyboard controller Normally nobody uses PC/XT (8bit) systems, we use AT (16/32/64bit) systems. So I think it is enough to explain

More information

Using peripherals on the MSP430 (if time)

Using peripherals on the MSP430 (if time) Today's Plan: Announcements Review Activities 1&2 Programming in C Using peripherals on the MSP430 (if time) Activity 3 Announcements: Midterm coming on Feb 9. Will need to write simple programs in C and/or

More information

Interfacing CMR3000-D01 to an MSP430 ultra low-power microcontroller

Interfacing CMR3000-D01 to an MSP430 ultra low-power microcontroller Interfacing CMR3000-D01 to an MSP430 ultra low-power microcontroller 1 INTRODUCTION The objective of this document is to show how to set up SPI/I2C communication between VTI Technologies CMR3000-D01 digital

More information

ME 6405 Introduction to Mechatronics

ME 6405 Introduction to Mechatronics ME 6405 Introduction to Mechatronics Fall 2006 Instructor: Professor Charles Ume Microchip PIC Manufacturer Information: Company: Website: http://www.microchip.com Reasons for success: Became the hobbyist's

More information

SANKALCHAND PATEL COLLEGE OF ENGINEERING, VISNAGAR. ELECTRONICS & COMMUNICATION DEPARTMENT Question Bank- 1

SANKALCHAND PATEL COLLEGE OF ENGINEERING, VISNAGAR. ELECTRONICS & COMMUNICATION DEPARTMENT Question Bank- 1 SANKALCHAND PATEL COLLEGE OF ENGINEERING, VISNAGAR ELECTRONICS & COMMUNICATION DEPARTMENT Question Bank- 1 Subject: Microcontroller and Interfacing (151001) Class: B.E.Sem V (EC-I & II) Q-1 Explain RISC

More information

538 Lecture Notes Week 1

538 Lecture Notes Week 1 538 Clowes Lecture Notes Week 1 (Sept. 6, 2017) 1/10 538 Lecture Notes Week 1 Announcements No labs this week. Labs begin the week of September 11, 2017. My email: kclowes@ryerson.ca Counselling hours:

More information

ECE2049-E17 Lecture 6 1. ECE2049: Embedded Computing in Engineering Design E Term Lecture #6: Exam Review

ECE2049-E17 Lecture 6 1. ECE2049: Embedded Computing in Engineering Design E Term Lecture #6: Exam Review ECE2049-E17 Lecture 6 1 ECE2049: Embedded Computing in Engineering Design E Term 2017 Lecture #6: Exam Review Administrivia Exam 1: Next Tuesday (6/6) HW2: Due Tonight at 7pm Lab 1: Due next Tuesday (6/6),

More information

MICROPROCESSORS A (17.383) Fall Lecture Outline

MICROPROCESSORS A (17.383) Fall Lecture Outline MICROPROCESSORS A (17.383) Fall 2010 Lecture Outline Class # 03 September 21, 2010 Dohn Bowden 1 Today s Lecture Syllabus review Microcontroller Hardware and/or Interface Programming/Software Lab Homework

More information

#include <avr/io.h> #include <avr/interrupt.h> #define F_CPU UL // 8 MHz.h> #include <util/delay.h>

#include <avr/io.h> #include <avr/interrupt.h> #define F_CPU UL // 8 MHz.h> #include <util/delay.h> #include #include #define F_CPU 8000000UL // 8 MHz.h> #include unsigned char buttonpressed; int tempout; int tempin; int realtempout; int realtempin; int maxalarm;

More information

Administrivia. ECE/CS 5780/6780: Embedded System Design. Debugging: Another perspective. Testing & Stabilization

Administrivia. ECE/CS 5780/6780: Embedded System Design. Debugging: Another perspective. Testing & Stabilization Administrivia ECE/CS 5780/6780: Embedded System Design Scott R. Little Lecture 5: Debugging/FSMs Reprise & Interfacing Methods Lab 3 is posted. Extra points are available. Extra points do not affect the

More information

EXPERIMENT NO. 01 CALCULATOR USING PIC16F877

EXPERIMENT NO. 01 CALCULATOR USING PIC16F877 EXPERIMENT NO. 01 CALCULATOR USING PIC16F877 DOP: DOS: Project Members: 1) Prasad Pawaskar 58 2) Vishal Thakur 72 Page No.- 1 AIM: To implement basic calculator functionality using PIC microcontroller

More information

Homework 5: Theory of Operation and Hardware Design Narrative

Homework 5: Theory of Operation and Hardware Design Narrative ECE 477 Digital Systems Senior Design Project Rev 9/12 Homework 5: Theory of Operation and Hardware Design Narrative Team Code Name: Hackers of Catron Group No. 03 Team Member Completing This Homework:

More information

Welcome to this presentation of the STM32 direct memory access controller (DMA). It covers the main features of this module, which is widely used to

Welcome to this presentation of the STM32 direct memory access controller (DMA). It covers the main features of this module, which is widely used to Welcome to this presentation of the STM32 direct memory access controller (DMA). It covers the main features of this module, which is widely used to handle the STM32 peripheral data transfers. 1 The Direct

More information

8051 I/O and 8051 Interrupts

8051 I/O and 8051 Interrupts 8051 I/O and 8051 Interrupts Class 7 EE4380 Fall 2002 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas Agenda 8051 I/O Interfacing Scanned LED displays LCD displays

More information

COMP2121: Microprocessors and Interfacing. I/O Devices (I)

COMP2121: Microprocessors and Interfacing. I/O Devices (I) COMP2121: Microprocessors and Interfacing I/O Devices (I) http://www.cse.unsw.edu.au/~cs2121 Lecturer: Hui Wu Session 2, 2017 1 Overview I/O Ports AVR Ports 2 2 What is I/O? I/O is Input or Output (Input/Output).

More information