Shield LCD Keypad
Từ ChipFC Wiki
Phiên bản vào lúc 16:51, ngày 12 tháng 7 năm 2017 của Chipfc (Thảo luận | đóng góp) (Tạo trang mới với nội dung “Category:Arduino Shield {{Đang viết}} == Giới thiệu == * Đây là LCD keypad shield rất phổ biến cho Arduino Uno, Diecimila, Duemilano…”)
Bài viết này đang được phát triển hoặc chỉnh sửa lớn. |
Mục lục
Giới thiệu
- Đây là LCD keypad shield rất phổ biến cho Arduino Uno, Diecimila, Duemilanove, Freeduino boards và một số Uno boards khác như Sparkfun Redboard.
- Gồm màn hình LCD 16x2 và 6 nút nhấn tạm thời. Pin 4,5,6,7,8,9 và 10 được sử dụng để giao tiếp với màn hình LCD. Pin Analog 0(A0) được sử dụng để đọc các nút nhấn. Các LCD shield hỗ trợ điều chỉnh tương phản và chức năng bật/tắt đèn nền. Ngoài ra, boards được mở rộng chân tương tự để tự đọc cảm biến và hiện thị dễ dàng.
Đặc điểm
- Khung LCD keypad shield được phát triển cho tương thích với Arduino boards, cung cấp giao diện đơn giản thân thiện cho phép người dùng sử dụng menu, lựa chọn...
- Màn hình LCD 1602 nền xanh với những từ trắng, sử dụng thư viện 4 BIT Arduino LCD Library. Tích hợp 1 biến trở để điều chỉnh đèn nền.
- 6 nút cung cấp bảng điều khiển tùy chỉnh (SELECT, LEFT, UP, DOWN, RIGHT, RST(reset)). Các nút được kết nối với 1 đầu Analog thông qua điện trở để cấp cho mỗi nút một điện áp khác nhau.
Pin | chức năng |
---|---|
Analog 0 | Button (SELECT,UP,DOWN,RIGHT,LEFT) |
Digital 4 | DB4 |
Digital 5 | DB5 |
Digital 6 | DB6 |
Digital 7 | DB7 |
Digital 8 | RS (điều khiển địa chỉ nào được ghi dữ liệu) |
Digital 9 | Enable (cho phép ghi vào LCD) |
Digital 10 | Backlight(Backlight Anode(+) và Backlight Cathode(-)): Bật/tắt đèn màn hình |
sơ đồ chân
Sử dụng
Sơ đồ kết nối
Source code mẫu:
/*xuất dòng chữ đơn giản*/
#include <LiquidCrystal.h>
//khởi tạo chân cho LCD
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
void setup() {
//thông báo đây là lcd 1602:
lcd.begin(16, 2);
//in ra màn hình lcd dòng chữ:
lcd.print("LCD KEYPAD SHIELD");
}
void loop() {
//đặt con trỏ vào cột 0 , dòng 1:
lcd.setCursor(0, 1);
//in chữ:
lcd.print("Chipfc.com");
} |
/*xuất ký tự và dịch ký tự*/
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
//tạo biến với gia trị đầu tiên
int thisChar = 'A';
void setup() {
lcd.begin(16, 2);
lcd.cursor();
}
void loop() {
//hiện từng chữ từ A->M từ trái sang phải
if (thisChar == 'M') {
//đến M thì dịch trái
lcd.rightToLeft(); //dịch thay thế
}
if (thisChar == 'S') {
//đến S dịch sang phải
lcd.leftToRight();
}
//reset khi đến Z
if (thisChar > 'Z') {
// đưa con trở từ từ trở về vị trí đầu (không thay thế khi di chuyển qua)
lcd.home();
//bắt đầu lại đầu
thisChar = 'A';
}
// print các chữ cái
lcd.write(thisChar);
//đợi 1s:
delay(1000);
// tăng giá trị biến để xuất ký tự:
thisChar++;
} |