Ứng dụng: Làm bàn phím nhập liệu cho thiết bị
#keypad #banphim #4×4
Một bàn phím cho phép bạn tương tác với một vi điều khiển. Bạn có thể sử dụng lại những bàn phím từ điện thoại cũ hoặc bạn có thể mua chúng từ hầu hết các cửa hàng điện tử. Chúng có nhiều hình dạng và kích cỡ. Phổ biến nhất là kích thước 3 × 4 hoặc 4 × 4 và bạn có thể nhập bàn phím với các từ, chữ cái và số được viết trên các phím.
Nguyên lý làm việc
Bàn phím màng là một ma trận bao gồm các hàng và cột. Mỗi phím là được gán cho một hàng và cột nhất định (xem hình bên dưới).
Sơ đồ mạch
Nếu bàn phím của bạn khác với bàn phím bên dưới, hãy tìm kiếm datasheet của nó là nối cho đúng.
Chương trình
Đầu tiên, bạn cần cài thư viện keypad: http://playground.arduino.cc/uploads/Code/keypad.zip
Nếu bàn phím của bạn không hoạt động với chương trình bên dưới, bạn có thể phải thay đổi cách đấu dây từ các sơ đồ trước. Bạn phải nối theo datasheet củabàn phím.
#include "Keypad.h"
const byte ROWS = 4; // số hàng bàn phím
const byte COLS = 3; // số cột bàn phím
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'#','0','*'}
};
byte rowPins[ROWS] = {8, 7, 6, 5}; // thứ tự các chân "hàng" được nối vào arduino R1 = D8, R2 = D7, R3 =
D6, R4 = D5
byte colPins[COLS] = {4, 3, 2}; // thứ tự các chân "cột" được nối vào arduino C1 = D4, C2 = D3,
C3 = D2
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
void setup(){
Serial.begin(9600);
}
void loop(){
char key = keypad.getKey();
if (key != NO_KEY)
Serial.println(key); // In ra phím đã nhấn
}
Kết quả: