1. Single-wire keypad interface frees microcontroller-l/O pins.
- Author
-
Schleicher, Israel and Thompson, Brad
- Subjects
- *
COMPUTER interfaces , *COMPUTER input-output equipment , *ELECTRONIC controllers , *COMPLEMENTARY metal oxide semiconductors , *DIGITAL electronics - Abstract
This paper describes a keypad interface that frees microcontroller input/output pins. In most keypads, pressing a key closes a contact that bridges two lines in an xy matrix. The pulse's width is proportional to the number of the pressed key, and the microcontroller identifies the pressed key by measuring the pulse's width. IC2, a complementary metal oxide semiconductor LMC555 version of the popular 555 timer, operates as a monostable one-shot multivibrator. In the circuit's resting state, a transistor internal to IC2 at Pin 7 shunts C6 and the output of IC2 at Pin 3 remains at logic low. The output of IC1 goes from five to zero volt, which in turn triggers Pin 2 of IC2. The smallest relative change in pulse width occurs at the longest pulse ratio, 110/1,320 or 8. 33 percent. This ratio provides sufficient margin to allow use of standard ±one percent tolerance or better components that are ±0.5 and ±one percent. The keypad circuit's output pulse drives the external interrupt input, RA2 of a Microchip 16F630 microcontroller. As a safeguard against erroneous data, the routine returns an error code if the pulse width falls outside certain limitations.
- Published
- 2005