Non-Blocking Keypad Reader with 7-Segment LED Display
This project presents a non-blocking keypad reader that accepts user input from a 9-digit keypad. The design allows the processor to perform other calculations while still monitoring the keypad. Upon a key press, the corresponding key will illuminate a 7-segment LED display. The system is interrupt-driven, requiring an external interrupt for operation. A detailed implementation, including hardware setup and software routines, ensures smooth functioning. Demonstration video available at: http://youtu.be/bi9vrCkJWHg.
Non-Blocking Keypad Reader with 7-Segment LED Display
E N D
Presentation Transcript
EE292 Fall2012Awesome Project:Keypad Reader Brendan Morris 12/06/2012
Abstract/Goal/Motivation/Introduction • Accept user input from a 9 digit keypad • This should be non-blocking to allow the processor to do other calculations • Output key is illuminated on an 7-segment LED
Description • Usage: A user presses on a single keypad button and the button that is pressed gets displayed on the LED array • Keypad numbering • Keypad is interrupt driven • Must set keypad to pulse operation and have the AND enabled interrupt button active • Number of the pressed key is written to the 7-segment display
Implementation • Hardware • External Keypad • 7-segmentLED • Enable/initialize external interrupt • Main program waits for key press • On key press • Run external interrupt service routine (ISR) • Poll keypad to find which key was pressed • Output number of key pressed to illuminate 7-segment display • Issues/subtleties • Still have to poll keys even under interrupt (software decoding) • Must be sure to enable/disable interrupts during ISR • Software design
Results Demo • <show a movie here of your project in action> • http://youtu.be/bi9vrCkJWHg