Embedded system applications usually require large number of buttons
connected (ex. calculator, cell phone). Keypad is one of the input
device that commonly used in embedded system that require large number
of buttons. 4x4 matrix keypad have 16 buttons. We can connect this buttons
directly to GPIO pin, but it will eat up precious GPIO pin (If we have
16 buttons, then we need 16 GPIO pins). To avoid this trouble, keypad
use technique that will save GPIO pin. In this technique, buttons are
connected in a matrix (row/column) style.
The internal connection of the buttons in 4x4 matrix keypad is like this: