Chuyển đến nội dung
Display Engineer
IC driver · Sitronix

ST7789V: datasheet, sơ đồ chân & mã khởi tạo

ST7789V là driver TFT đơn chip có GRAM trên chip cho màn hình đến 240×320, được dùng rộng rãi trong module IPS 1,3″–2,4″ điều khiển qua SPI 4 dây.

DEDisplay Engineer Applications Team · Kỹ sư ứng dụng màn hìnhKỹ sư rà soát 11 thg 10, 2026
Nhà sản xuấtSitronix
LoạiDriver màn hình
Giao tiếpSPI / MCU (song song 8080) / RGB (song song)
Độ phân giải tối đa240×320

ST7789V là gì?

ST7789V là driver source và gate cho TFT LCD của Sitronix với bộ nhớ khung tích hợp (GRAM). Vì hình ảnh nằm trong driver, vi điều khiển chỉ gửi các pixel thay đổi và không cần frame buffer riêng. Đó là lý do module ST7789V phổ biến trên ESP32, STM32, RP2040 và các board loại Arduino.

Nên dùng giao tiếp nào?

Giao tiếp

Số chân

Ứng dụng điển hình

4-wire SPI

4–5

Hầu hết module; đấu dây đơn giản, đến ~60 MHz

Song song 8080 (MCU)

12–20

Làm mới toàn màn hình nhanh hơn trên MCU có FSMC/FMC

RGB

18–24

Hiếm trên module nhỏ; làm mới như video

Các vấn đề khởi chạy phổ biến

  1. Màn hình trắng hoặc đen: kiểm tra timing reset và sau SLPOUT phải có độ trễ 120 ms trước DISPON.
  2. Sai màu: bật/tắt INVON/INVOFF và bit BGR trong MADCTL.
  3. Ảnh bị lệch: đặt đúng điểm bắt đầu cột/hàng cho tấm nền 240×240 và 135×240.
  4. Xé hình: dùng chân TE nếu module có đưa chân này ra.

Xem hướng dẫn khắc phục màn hình TFT bị trắng để có danh sách kiểm tra từng bước.

Mã khởi tạo ST7789V

ST7789V minimal init (SPI, RGB565)c
// Reference init sequence. Adjust MADCTL, inversion and offsets per panel.
write_cmd(0x01);              // SWRESET
delay_ms(150);
write_cmd(0x11);              // SLPOUT
delay_ms(120);
write_cmd(0x3A); write_data(0x55);   // COLMOD: 16-bit RGB565
write_cmd(0x36); write_data(0x00);   // MADCTL: rotation / RGB order
write_cmd(0x21);              // INVON: most IPS panels need inversion
write_cmd(0x13);              // NORON
write_cmd(0x29);              // DISPON
delay_ms(20);

Hỗ trợ thư viện cho ST7789V

Thư việnDriver / loạiGhi chú
TFT_eSPI (Arduino)ST7789_DRIVER
LovyanGFX (Arduino / ESP-IDF)lgfx::Panel_ST7789
ESP-IDF esp_lcdesp_lcd_new_panel_st7789() (built in)
Lưu ýNhiều tấm nền ST7789 cần bật đảo màu.
Tải mẫu cấu hình ST7789V

User_Setup_ST7789V.h · LGFX_ST7789V.hpp. Chân chỉ là tạm thời; chúng tôi sẽ gửi email khi bổ sung cấu hình đã kiểm thử.

Board phát triển dùng ST7789V

Module màn hình dùng ST7789V

ST7789V: xử lý sự cố & FAQ

Vì sao màu trên màn hình ST7789 của tôi bị đảo?

Hầu hết tấm nền IPS dùng ST7789V cần bật đảo màu hiển thị (lệnh 0x21, INVON). Nếu màu trông như phim âm bản, hãy bật/tắt đảo màu; nếu đỏ và xanh dương bị hoán đổi, hãy đổi bit RGB/BGR trong MADCTL (0x36).

ST7789V chịu được clock SPI bao nhiêu?

Nhiều module hoạt động ổn định ở SPI 40–62,5 MHz với dây ngắn. Bắt đầu ở 20 MHz, xác nhận hình ảnh, rồi tăng dần trong khi kiểm tra lỗi hiển thị.

Vì sao ảnh 240×240 của tôi bị lệch 80 pixel?

Bộ nhớ khung của ST7789V là 240×320. Trên tấm nền 240×240, một số hướng xoay cần độ lệch hàng hoặc cột (thường là 80) trong CASET/RASET; hầu hết thư viện cung cấp tùy chọn rowstart/colstart cho việc này.

Chưa chắc màn hình nào phù hợp thiết kế của bạn?

Gửi kích thước, giao tiếp và bộ xử lý host. Kỹ sư màn hình sẽ phản hồi trong 12 giờ với 2–3 phương án, datasheet và mã khởi tạo. Mẫu từ 1 chiếc.