Lập Trình Giao Tiếp Màn Hình LCD Với Board Mạch Arduino

1. Ý nghĩa các chân kết nối của màn hình LCD

LCD (Liquid Crystal Display) là màn hình tinh thể lỏng. LCD là loại thiết bị để hiển thị các ký tự, có cấu tạo bởi các điểm ảnh chứa các tinh thể lỏng (liquid crystal).

Màn hình LCD có ưu điểm là phẳng, cho hình ảnh sáng, chân thật và tiết kiệm năng lượng. Với Arduino, chúng ta có thể sử dụng LCD 16×2, gồm 2 dòng, mỗi dòng 16 ô ký tự. Vị trí các ô ký tự được đánh từ 0, 1, 2, 3, 4, 5,…,15.

Vị trí các ô ký tự của LCD 16x2

Các chân của màn hình LCD 16×2

Màn hình LCD 16x2

VSS: Tương đương với GND – cực âm.

VDD: Tương đương với VCC – cực dương (5V).

Constrast Voltage (VE hoặc VEE): Điều khiển độ sáng màn hình.

Register Select (RS): Lựa chọn thanh ghi trong LCD để xử lý chương trình (RS=0 chọn thanh ghi lệnh, RS=1 chọn thanh ghi dữ liệu).

Read/Write (RW): RW=0 ghi dữ liệu , RW=1 đọc dữ liệu.

Enable (E): Cho phép ghi vào LCD.

D0 – D7: 8 chân nhận dữ liệu.

Backlight Anode (+) và Backlight Cathode (-): Nguồn dương và nguồn âm của đèn màn hình LCD.

2. Thiết kế mạch giao tiếp với LCD của Arduino

Để LCD hoạt động thì:

    • Cần cấp nguồn dương (+) vào chân VDD của LCD, cấp nguồn âm (-) vào chân VSS.
    • Kết nối chân Baclight Anode với nguồn dương (+) và Backlight Cathode với nguồn âm (-) để điều khiển bật đèn màn hình.
    • Kết nối chân VEE với biến trở để điều khiển độ sáng màn hình.
    • Chân R/W kết nối với GND (R/W=0) để ghi dữ liệu vào LCD.
    • Kết nối chân RS và Enable với board mạch Arduino để giao tiếp với Arduino.
    • Điều khiển LCD ở chế độ 4 bit, kết nối 4 chân D4, D5, D6, D7 với board mạch Arduino.
Thiết kế mạch giao tiếp LCD với Arduino

Có thể sử dụng Proteus để giả lập mạch giao tiếp với LCD như hình bên dưới.

Sơ đồ mạch giả lập Proteus giao tiếp LCD với Arduino

Khi sử dụng mạch giả lập giao tiếp LCD với Arduino thì có thể không cần sử dụng chân VDD, VSS, VEE cũng như Backlight Anode (+) và Backlight Cathode (-).

3. Chương trình hiển thị ký tự lên LCD

Để giao tiếp LCD với Arduino, sử dụng thư viện <LiquidCrystal.h> tích hợp sẵn thư viện của Arduino. Chương trình bên dưới giúp hiển thị các ký tự trên LCD.

  • Trait là gì? Cách sử dụng Trait trong PHP
  • Hàm lambda trong Python là gì?
  • Các chỉ định truy cập (access modifier) trong PHP
  • Các thao tác trên cấu trúc dữ liệu Dictionary trong Python
  • Chuyển đổi (convert) dữ liệu XML sang dữ liệu JSON trong Python
#include <LiquidCrystal.h>//Khai báo thư viện LiquidCrystal lcd(12, 11, 5, 4, 3, 2);//Khai báo các chân RS, E, D4-D7 kết nối với Arduino void setup() { lcd.begin(16, 2);//Khởi tạo màn hình LCD và xác định kích thước màn hình LCD là 16x2 } void loop() { lcd.clear();//Xóa màn hình và đặt con trỏ về vị trí đầu tiên (0, 0) lcd.setCursor(6,0);//Di chuyển con trỏ đến cột tương ứng lcd.print("HELLO");//Xuất ra màn hình từ vị trí con trỏ lcd.setCursor(5,1); lcd.print("ARDUINO"); delay(1000); }
Kết quả
Hiển thị ký tự trên LCD
5/5 - (1 bình chọn)Bài trước và bài sau trong môn học<< Lập trình điều khiển nhiều led bằng IC HC595 với board mạch ArduinoCác hiệu ứng hiển thị trên LCD với board mạch Arduino >>

Từ khóa » Chân Rs Của Lcd