Màn hình LCD đóng vai trò là "đôi mắt" của các dự án Arduino, chuyển đổi mã thành văn bản và đồ họa hiển thị. Đối với cả nhà sản xuất và kỹ sư, việc tích hợp màn hình có thể nâng tầm các dự án từ các khái niệm trừu tượng thành các trải nghiệm tương tác. Hướng dẫn này khám phá cách kết nối màn hình LCD 16×2 của Newhaven với bo mạch Arduino UNO bằng cả phương pháp giao tiếp nối tiếp SPI và RS232 TTL.
Màn hình LCD ký tự vẫn phổ biến cho các dự án Arduino nhờ sự đơn giản và hiệu quả trong việc truyền tải thông tin. Định dạng 16×2 (16 ký tự trên 2 dòng) cung cấp đủ không gian cho các thông báo trạng thái, số đo cảm biến hoặc giao diện người dùng đơn giản. Mẫu NHD-0216K3Z-NSW-BBW-V3 của Newhaven mang lại những lợi thế đặc biệt với các giao diện nối tiếp tích hợp giúp giảm độ phức tạp của hệ thống dây.
Màn hình Newhaven có hai cổng giao tiếp:
| Số chân | Ký hiệu | Chức năng |
|---|---|---|
| 1 | RX | Đầu vào nối tiếp RS-232 (TTL) |
| 2 | VSS | Tiếp đất |
| 3 | VDD | Nguồn điện (+5.0V) |
| Số chân | Ký hiệu | Chức năng |
|---|---|---|
| 1 | SPISS | Chọn slave SPI (NC ở chế độ I2C) |
| 2 | SDO | Không kết nối |
| 3 | SCK/SCL | Đồng hồ nối tiếp |
| 4 | SDI/SDA | Đầu vào dữ liệu nối tiếp (SPI)/Dữ liệu nối tiếp (I2C) |
| 5 | VSS | Tiếp đất |
| 6 | VDD | Nguồn điện (+5.0V) |
SPI (Giao diện ngoại vi nối tiếp) cung cấp giao tiếp đồng bộ tốc độ cao, lý tưởng cho các kết nối khoảng cách ngắn giữa Arduino (chủ) và LCD (từ). Kết nối yêu cầu năm dây:
| Arduino | LCD | Loại kết nối |
|---|---|---|
| Chân 5V | Chân 6: VDD | Nguồn |
| Chân nối đất | Chân 5: Tiếp đất | Tiếp đất |
| Chân 10: Chọn Slave | Chân 1: SPISS | Chọn slave SPI |
| Chân 11: MOSI | Chân 4: SDI/SDA | Đầu vào dữ liệu nối tiếp |
| Chân 12: MISO | Chân 3: SCK/SCL | Đồng hồ nối tiếp |
Lưu ý:Để bật SPI, cần mở R1 và nối tắt R2 trên PCB màn hình như được chỉ định trong bảng dữ liệu.
Mã Arduino để giao tiếp SPI bao gồm một số hàm thiết yếu:
SPI_Out()- Truyền lệnh và dữ liệu đến LCDSet_Pins()- Cấu hình chân SPI làm đầu raSet_Contrast()- Điều chỉnh độ tương phản màn hìnhSet_Backlight()- Điều khiển cường độ đèn nềnClear_Display()- Xóa màn hình LCDSet_Cursor()- Quản lý khả năng hiển thị con trỏĐối với các thiết lập đơn giản hơn, RS232 TTL chỉ yêu cầu ba kết nối:
| Arduino | LCD | Loại kết nối |
|---|---|---|
| Chân 5V | Chân 3: VDD | Nguồn |
| Chân nối đất | Chân 2: Tiếp đất | Tiếp đất |
| Chân 7: I/O kỹ thuật số | Chân 1: RX | Đầu vào RS-232 TTL |
Lưu ý:Cả R1 và R2 phải được mở trên PCB màn hình để bật chế độ RS232 TTL.
Khi gặp sự cố với thiết lập Arduino-LCD của bạn, hãy xem xét các bước chẩn đoán sau:
Set_Contrast()để tối ưu hóa khả năng hiển thị.Bằng cách làm theo các hướng dẫn này và hiểu cả hai phương pháp giao tiếp, người dùng có thể tích hợp hiệu quả màn hình LCD vào các dự án Arduino của họ để tăng cường chức năng và tương tác người dùng.