Sunton · 显示开发板
ESP32-2432S028R (CYD) 显示屏:参数、驱动版本与配置
Cheap Yellow Display:ESP32 主板上的 2.8 英寸 240×320 SPI TFT。不同批次搭配 ILI9341 或 ST7789 显示控制器,因此同一份代码在一块板上正常,在另一块板上可能白屏。
工程师审核于 2026年10月11日
ESP32-2432S028R (CYD) 显示参数
| MCU | ESP32 (ESP32-WROOM-32) |
|---|---|
| 显示屏 | 2.8″ · 240×320 |
| 显示总线 | SPI (HSPI) |
| 驱动 IC | ILI9341 或 ST7789 |
| 触摸 | XPT2046 电阻触摸(独立 SPI 引脚) |
你手上的 ESP32-2432S028R (CYD) 是哪个版本?
同名板子会搭配不同的显示驱动 IC 出货。为一个版本写的代码在另一个版本上会出现白屏、颜色错误或完全不显示,所以请先确认你手上的版本。
| 版本 | 驱动 IC | 识别方法 | 库设置 |
|---|---|---|---|
| 初版(micro-USB) | ILI9341 | 社区版 User_Setup.h 无需修改即可使用 | TFT_eSPI:ILI9341_2_DRIVER,不开反转 |
| 后期批次(部分带两个 USB 口) | ST7789 | 用 ILI9341 设置时出现白屏、颜色发白或反色 | TFT_eSPI:ST7789_DRIVER;逐个尝试 TFT_INVERSION_ON/OFF 和 TFT_RGB_ORDER TFT_BGR;背光仍为 GPIO 21 |
ESP32-2432S028R (CYD) 显示与触摸引脚
| 信号 | GPIO | 备注 |
|---|---|---|
| TFT MOSI | 13 | HSPI |
| TFT MISO | 12 | HSPI |
| TFT SCLK | 14 | HSPI |
| TFT CS | 15 | |
| TFT DC | 2 | |
| TFT RST | -1 | 未连接到 GPIO |
| Backlight | 21 | 高电平有效;不要复用 |
| Touch CLK | 25 | XPT2046 |
| Touch CS | 33 | XPT2046 |
| Touch DIN (MOSI) | 32 | XPT2046 |
| Touch DO (MISO) | 39 | XPT2046 |
| Touch IRQ | 36 | XPT2046 |
同规格显示屏,用于批量生产
在 ESP32-2432S028R (CYD) 上做的原型?这些直营工厂模组的面板尺寸和分辨率相同,附规格书,每个生产批次固定驱动 IC,样品 1 片起。起订量和交期按项目商定。
从 ESP32-2432S028R(CYD)原型到量产
开发板很适合验证界面,但它们的面板是从公开市场采购的:控制器可能在批次之间更换(这块板就已经换过),很少有规格书,寿命也没有保证。做产品时,请选用每个生产批次固定驱动 IC、有规格书和生命周期承诺的模组。
我们的直营工厂生产同为 2.8″ 240×320 规格的模组。样品 1 片起;起订量和交期由销售团队按项目商定。
调试代码之前
- 先确认你手上的版本(见上表):驱动 IC 变更是白屏最常见的原因。
- 检查背光引脚没有在你的代码中被复用。
- 一次只改一个设置(驱动、反转、颜色顺序),并保留一个已知正常的示例用于对比。
配置示例
TFT_eSPI User_Setup.h: ILI9341 revision (community default)c
#define ILI9341_2_DRIVER
#define TFT_WIDTH 240
#define TFT_HEIGHT 320
#define TFT_BL 21
#define TFT_BACKLIGHT_ON HIGH
#define TFT_MISO 12
#define TFT_MOSI 13
#define TFT_SCLK 14
#define TFT_CS 15
#define TFT_DC 2
#define TFT_RST -1
#define SPI_FREQUENCY 55000000
#define SPI_READ_FREQUENCY 20000000
#define SPI_TOUCH_FREQUENCY 2500000
#define USE_HSPI_PORT参考资料· Community / vendor configuration (see sources)
TFT_eSPI User_Setup.h: ST7789 revision (change only the driver block)c
// replace the ILI9341_2_DRIVER line with:
#define ST7789_DRIVER
#define TFT_WIDTH 240
#define TFT_HEIGHT 320
// if colours are inverted, toggle ONE of these:
#define TFT_INVERSION_ON
// #define TFT_INVERSION_OFF
// if red and blue are swapped:
// #define TFT_RGB_ORDER TFT_BGR
// pins and SPI settings stay the same as the ILI9341 setup参考资料· Community / vendor configuration (see sources)
常见问题
为什么别人能用的代码在我的 CYD 上白屏?
你的板子很可能是 ST7789 显示控制器而不是 ILI9341。把 TFT_eSPI 驱动改为 ST7789_DRIVER,并调整反转和颜色顺序;引脚不变。
CYD 的背光由哪个 GPIO 控制?
GPIO 21,高电平有效。在代码中复用 GPIO 21 会让屏幕变黑。
为什么在 CYD 上 TFT_eSPI 的触摸不工作?
XPT2046 触摸控制器使用独立引脚(CLK 25、CS 33、DIN 32、DO 39、IRQ 36),不在显示屏的 SPI 总线上,因此请在这些引脚上单独创建一个 XPT2046 库实例。

