Using an MCU or SoC to scan a keypad is a less than ideal solution for human input. It often makes sense to offload keypad scanning to a dedicated IC to reduce the power and I/O burden on larger, less efficient, and more expensive devices. Using a GreenPAK™ as a keypad scanner provides a flexible, reliable solution that won’t kill your power budget or your BOM cost. Any GreenPAK with I2C can perform this function, but using a GreenPAK’s Asynchronous State Machine (ASM) unlocks the full potential and enables up to 54 key scanning.
GreenPAK Benefits for Keypad Scanning
- GreenPAK has integrated delays for programmable button de-bounce
- GreenPAK’s ASM can quickly and reliably scan up to 54 buttons in a 20-pin device
- GreenPAK VDD is 1.8 to 5.0 V
- GreenPAK GPIO routing is flexible, ensuring the least complexity in printed circuit board (PCB) routing
- GreenPAK is low-power and can operate continuously without ruining power budget while the main microcontroller (MCU) or system on chip (SoC) is in standby
- GreenPAK is Zero Code – Implementing features in hardware ensures stability
- GreenPAK can integrate many components ensuring fewer points of failure
Keypad Scanner, a Stately Design
How does it work?
1. Once powered, GreenPAK’s ASM cycles through each state, sending out a logic HIGH to each row using the 8-bit ASM output in a 1-hot configuration.
2. When a key is pressed, the circuit is complete and the HIGH signal is picked up by the corresponding column input. GreenPAK then generates an interrupt, stopping the ASM and notifying the MCU or SoC, which can be in sleep mode to save power.
3. From here, the MCU or SoC needs to simply send the I2C read commands to determine the active row and column and decode the key pressed from that information.
4. After completing the I2C read, the MCU or SoC can send a RESET signal to GreenPAK which then releases the ASM to continue scanning.
Figure 2. Keypad Scanner State Diagram
Figure 3. 48 Key Scanner GreenPAK Implementation
GreenPAK can often implement multiple functions. Just one GreenPAK device can implement keypad scanner in conjunction with other functions like glue logic, timing adjustment, reset, power sequencing, LED control, and more depending on design requirements and resource configuration.
Below are are just a few GreenPAK devices which can perform a keypad scan function.
|GreenPAK Part Number||Max Keys||Programmable Debounce|