To make use of the keypad, I used Arduino's keypad library.
I connected the keypad to the Arduino as follows:
Keypad Pin | Arduino Pin |
---|---|
1 | 7 |
2 | 5 |
3 | 8 |
4 | 2 |
5 | 6 |
6 | 3 |
7 | 4 |
To use in your code, make sure you include it:
#include <Keypad.h>
You also need to map out the keys like such:
const byte ROWS = 4; //four rows const byte COLS = 3; //three columns char keys[ROWS][COLS] = { { '1','2','3' } , { '4','5','6' } , { '7','8','9' } , { '*','0','#' } }; //The below numbers correspond to the Arduino Pins byte rowPins[ROWS] = {5, 4, 3, 2}; //connect to the row pinouts of the keypad byte colPins[COLS] = {8, 7, 6}; //connect to the column pinouts of the keypad
Afterwards, instantiate the Keypad:
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
Then to get the key pressed, it's just as simple as this:
char key = keypad.getKey();