#include <Keypad.h>
const int ROW_NUM = 4; // จำนวนแถวของ keypad
const int COLUMN_NUM = 4; // จำนวนคอลัมน์ของ keypad
char keys[ROW_NUM][COLUMN_NUM] = {
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte pin_rows[ROW_NUM] = {19, 18, 5, 17}; // กำหนดขาของแถวที่ต่อกับ Arduino
byte pin_column[COLUMN_NUM] = {16, 4, 0, 2}; // กำหนดขาของคอลัมน์ที่ต่อกับ Arduino
Keypad keypad = Keypad(makeKeymap(keys), pin_rows, pin_column, ROW_NUM, COLUMN_NUM);
int value = 0; // ตัวแปรเก็บค่า
void setup() {
Serial.begin(115200);
}
void loop() {
while (true) {
char key = keypad.getKey();
if (key) {
if (key == 'A') {
Serial.println("");
Serial.print("Value: ");
Serial.println(value);
value = 0;
break;
}
else if (key == 'B') {
value = value / 10;
Serial.println(value);
}
else {
value = value * 10 + (key - '0');
Serial.println(value);
}
}
}
}