开发指南 2025-06-02 约 3 分钟阅读

ESP32 驱动 TFT 液晶屏完整教程:SPI 接线 + 驱动库 + LVGL 上手

从零开始用 ESP32/ESP32-S3 点亮一块 SPI TFT 屏,含接线表、库选择、最小示例代码与排错清单。

ESP32 系列是中小尺寸显示方案里最常用的主控之一:自带 WiFi/蓝牙、价格低、生态成熟。这篇讲清楚用 ESP32 点亮一块 SPI TFT 屏的完整流程。

一、需要准备

二、接线(以常见 SPI 屏为例)

屏幕引脚ESP32 引脚说明
VCC3.3V注意不要接 5V
GNDGND共地
SCL / SCKGPIO 18SPI 时钟
SDA / MOSIGPIO 23SPI 数据
CSGPIO 15片选
DC / RSGPIO 2数据/命令选择
RES / RSTGPIO 4复位
BLK / LED3.3V(或 PWM)背光,可接 PWM 调亮度

注意:不同型号屏的引脚定义不同,务必以规格书为准。接线过长或接触不良是新手最常见的白屏原因。

三、编写最小示例

#include <TFT_eSPI.h>

TFT_eSPI tft = TFT_eSPI();

void setup() {
  tft.init();
  tft.setRotation(1);
  tft.fillScreen(TFT_BLACK);

  tft.setTextColor(TFT_CYAN, TFT_BLACK);
  tft.setTextSize(2);
  tft.setCursor(20, 60);
  tft.println("EYA Display");

  tft.setTextColor(TFT_WHITE, TFT_BLACK);
  tft.setTextSize(1);
  tft.setCursor(20, 100);
  tft.println("ESP32 + SPI TFT OK");
}

void loop() {
  delay(1000);
}

TFT_eSPI 需要在库目录的 User_Setup.h 里配置驱动芯片型号和引脚定义,配置错误会出现白屏、花屏或颜色错位。

四、进阶:用 LVGL 做界面

五、排错清单

现象常见原因
完全白屏背光未接 / 复位引脚接错 / 驱动芯片型号配错
花屏、噪点接线过长或接触不良 / SPI 时钟过高
颜色不对(红蓝互换)RGB/BGR 顺序配置错误
能显示但闪烁供电电流不足(换独立 3.3V 供电)
触摸无效触摸芯片型号未配置 / I2C 地址不对

想跳过驱动开发?

亦亚徽 ESP32 串口屏内置固件与组态软件,用 UART 指令即可控制界面,无需写 UI 代码。

查看串口屏方案 →

常见问题

ESP32 和 ESP32-S3 驱动屏幕有什么区别?

ESP32-S3 主频更高(240MHz)、支持更大 PSRAM 和 USB OTG,驱动大尺寸屏幕或跑 LVGL 更流畅;ESP32 适合小尺寸简单 UI。

SPI 屏最多能多大?

从带宽考虑,SPI 适合 3.5 寸以内、480×320 以下分辨率的场景。更大尺寸建议改用 RGB 或 MIPI 接口。

屏幕供电能用开发板的 3.3V 吗?

小尺寸可以;2.8 寸以上或高亮屏建议用独立 3.3V 供电,否则背光会让电压跌落导致闪烁。

觉得有用?分享给同事:

𝕏 分享 in 分享

相关文章

ESP32 串口屏 GUI 设计全流程:从零到量产

ESP32 串口屏 GUI 设计全流程:从零到量产

开发指南 · 2025-04-15
LCD 接口全解析:SPI / 并行 / RGB / MIPI / LVDS 到底怎么选

LCD 接口全解析:SPI / 并行 / RGB / MIPI / LVDS 到底怎么选

技术选型 · 2025-03-28
TFT 液晶屏尺寸怎么选?0.69–10.1 寸全尺寸选型指南

TFT 液晶屏尺寸怎么选?0.69–10.1 寸全尺寸选型指南

选型指南 · 2025-05-12