Show Các lỗi thường gặp khi sử dụng I2C LCD
- Các lỗi này chủ yếu là do sai địa chỉ bus, để fix lỗi các bạn thay địa chỉ mặc định là “0x27” thành “0x3F. - Trong trường hợp vẫn không được các bạn fix lỗi bằng cách nạp code tìm địa chỉ bus của I2C. - Sau khi tìm xong các bạn thay địa chỉ vừa tìm được vào vị trí “0x27” là xong. Địa chỉ I2C 0x27Địa chỉ I2C 0x3F Code scan địa chỉ i2c`// ------ // i2c_scanner // ------ include <Wire.h>void setup() { Wire.begin(); Serial.begin(9600); while (!Serial); // Leonardo: wait for serial monitor Serial.println("\nI2C Scanner"); } void loop() { int nDevices = 0; Serial.println("Scanning..."); for (byte address = 1; address < 127; ++address) { // The i2c_scanner uses the return value of // the Write.endTransmisstion to see if // a device did acknowledge to the address. Wire.beginTransmission(address); byte error = Wire.endTransmission(); if (error == 0) { Serial.print("I2C device found at address 0x"); if (address < 16) { Serial.print("0"); } Serial.print(address, HEX); Serial.println(" !"); ++nDevices; } else if (error == 4) { Serial.print("Unknown error at address 0x"); if (address < 16) { Serial.print("0"); } Serial.println(address, HEX); } } if (nDevices == 0) { Serial.println("No I2C devices found\n"); } else { Serial.println("done\n"); } delay(5000); // Wait 5 seconds for next scan }` Giao tiếp I2C LCD ArduinoSơ đồ đấu nốiSơ đồ đấu nối giao tiếp IC2 với LCD 16×2.Phần cứng cần thiết
Code mẫu
Giải thích code
Khởi động màn hình LCD, bắt đầu cho phép Arduino sử dụng màn hình. Bật đèn nèn LCD
Đưa con trỏ tới hàng 1, cột 3. Lưu ý: giá trị hàng và cột bắt đầu từ số 0 có nghĩa 0 là hàng(cột) 1.
Xuất ra dòng chữ tcl47.blogspot.com tại vị trí con trỏ ở hàng 1, cột 3.
Đoạn code này thì tương tự như trên, xuất ra dòng chữ “Xin chao cac ban”tại vị trí con trỏ ở hàng 2, cột 1. Bây giờ thì các bạn upload chương trình và xem kết quả nhé. Video: |