Màn hình LCD được sử dụng rất nhiều trong các đồ án môn học, bởi vì nó sử dụng đơn giản, rẻ tiền và hiển thị thông tin hiệu quả.
1. Kết nối
- Cấp nguồn 5V cho LCD: Vcc và GND
- Chuẩn I2C sử dụng 2 dây SDA và SCL để giao tiếp
Tra datasheet của vi điều khiển để biết chân nào là SDA (chân dữ liệu) và SCL (chân nhịp). Trong kết nối này, vi điều khiển đóng vai trò master, còn màn hình LCD là slave, master sẽ ghi dữ liệu xuống slave.
Do I2C sử dụng mô hình master - slave, nên slave cần có địa chỉ ID.
2. Chương trình
Sử dụng IDE hoặc Visual studo code (dùng platformio) đẻ lập trình cho board nhúng.
Bạn có thể sử dụng ESP32, Arduino,... để làm master.
Cấu trúc chương tình như sau:
#include <LiquidCrystal_I2C.h> //Thư viện để giao tiếp I2C // Khai báo địa chỉ slave của LCD thường là 0x27 hoặc 0x3F void setup() { // In ra màn hình void loop() { |
3. Phương pháp hiển thị hiệu quả trên màn hình LCD
- Các lỗi thường gặp khi hiển thị: Màn hình bị giật chớp; Dữ liệu mới đè lên dữ liệu cũ trong khi dữ liệu cũ chưa xóa;...
- Phương pháp khắc phục:
Không gọi ham clear() liên tục, điều này gây chậm màn hình
Chỉ cập nhật màn hình khi dữ liệu thay đổi, bằng cách so sánh dữ liệu mới và dữ liệu trước đó.