ESP32 LCD

Hướng dẫn này sẽ chỉ bạn cách sử dụng ESP32 với LCD I2C. Cụ thể, chúng ta sẽ học:

Linh Kiện Cần Thiết

1×mô-đun phát triển ESP-WROOM-32
1×Alternatively, ESP32 Uno-form board
1×Alternatively, ESP32 S3 Uno-form board
1×Cáp USB Type-C
1×LCD I2C
1×breadboard
1×Dây Jumper
1×(Tùy chọn) Jack Nguồn DC
1×(Khuyến nghị) Screw Terminal Expansion Board for ESP32
1×(Khuyến nghị) Breakout Expansion Board for ESP32
1×(Khuyến nghị) Power Splitter for ESP32

Or you can buy the following kits:

1×DIYables ESP32 Starter Kit (ESP32 included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Giới Thiệu Về LCD I2C 16x2

Sơ Đồ Chân LCD I2C

LCD I2C có 4 chân:

  • Chân VCC: nguồn cấp điện cho LCD, cần kết nối với VCC (5V).
  • Chân GND: kết nối chân này với GND (0V).
  • Chân SCL: chân tín hiệu clock I2C
  • Chân SDA: chân tín hiệu dữ liệu I2C
lcd i2c sơ đồ chân

Tọa Độ LCD 16x2

LCD I2C 16x2 có 2 hàng và 16 cột được đánh số từ 0.

ESP32 lcd i2c coordinate

Sơ Đồ Kết Nối Giữa LCD I2C và ESP32

  • Cách kết nối ESP32 và LCD I2C bằng breadboard (cấp nguồn qua cáp USB)
ESP32 lcd i2c sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image

Nếu bạn chưa rõ cách cấp nguồn cho ESP32 và các linh kiện khác, xem: Cách Cung Cấp Nguồn Điện Cho ESP32.

  • Cách kết nối ESP32 và LCD I2C bằng breadboard (cấp nguồn qua chân Vin)
ESP32 lcd màn hình sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image

how to connect ESP32 and lcd i2c
how to wire ESP32 and lcd i2c

Cách Lập Trình LCD I2C Với ESP32

  • Khai báo thư viện LiquidCrystal_I2C:
#include <LiquidCrystal_I2C.h>
  • Khai báo đối tượng LiquidCrystal_I2C:
LiquidCrystal_I2C lcd_i2c(0x27, 16, 2); // Địa chỉ I2C 0x27, 16 cột và 2 hàng
  • Khởi tạo LCD:
lcd_i2c.init(); lcd_i2c.backlight();
  • Di chuyển con trỏ đến vị trí mong muốn (chỉ_số_cột, chỉ_số_hàng)
lcd_i2c.setCursor(column_index, row_index);
  • In thông điệp lên LCD:
lcd_i2c.print("Hello ESP32!");

※ Lưu ý:

Địa chỉ LCD I2C có thể khác nhau giữa các nhà sản xuất. Trong code, chúng ta sử dụng địa chỉ 0x27 được chỉ định bởi nhà sản xuất DIYables

Code ESP32

#include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C address 0x27, 16 column and 2 rows void setup() { lcd_i2c.init(); // initialize the lcd lcd_i2c.backlight(); } void loop() { lcd_i2c.clear(); // clear display lcd_i2c.setCursor(0, 0); // move cursor to (0, 0) lcd_i2c.print("Hello"); // print message at (0, 0) lcd_i2c.setCursor(2, 1); // move cursor to (2, 1) lcd_i2c.print("newbiely.com"); // print message at (2, 1) delay(2000); // display the above for two seconds lcd_i2c.clear(); // clear display lcd_i2c.setCursor(3, 0); // move cursor to (3, 0) lcd_i2c.print("DIYables"); // print message at (3, 0) lcd_i2c.setCursor(0, 1); // move cursor to (0, 1) lcd_i2c.print("www.diyables.io"); // print message at (0, 1) delay(2000); // display the above for two seconds }

Các Bước Thực Hiện

  • Mới sử dụng ESP32? Hãy xem ESP32 - Cài Đặt Phần Mềm.
  • Nhấp vào biểu tượng Libraries ở thanh bên trái của Arduino IDE.
  • "LiquidCrystal I2C" vào ô tìm kiếm, sau đó tìm thư viện LiquidCrystal_I2C của Frank de Brabander
  • Nhấp nút Install để cài đặt thư viện LiquidCrystal_I2C.
ESP32 liquidcrystal i2c thư viện
  • Sao chép code trên và dán vào Arduino IDE.
  • Biên dịch và tải code lên board ESP32 bằng cách nhấp nút Upload trên Arduino IDE
  • Xem kết quả trên LCD
ESP32 lcd i2c màn hình
  • Thử thay đổi văn bản và vị trí

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.

Ứng Dụng Nâng Cao Với LCD

Ký Tự Tùy Chỉnh

Nếu bạn muốn hiển thị các ký tự đặc biệt hoặc biểu tượng (ví dụ: emoticon), hãy xem cách hiển thị ký tự đặc biệt trên LCD.

Khắc Phục Sự Cố LCD I2C

Nếu LCD không hiển thị gì, vui lòng xem LCD không hoạt động! - Danh sách kiểm tra

Bình Luận