ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

TFT_eSPI 快速上手指南:3步点亮TFT彩屏并跑通官方示例

2026/8/24 8:45:16 拓冰建站 浏览量
TFT_eSPI 快速上手指南:3步点亮TFT彩屏并跑通官方示例 TFT_eSPI 快速上手指南3步点亮TFT彩屏并跑通官方示例【免费下载链接】TFT_eSPIArduino and PlatformIO IDE compatible TFT library optimised for the Raspberry Pi Pico (RP2040), STM32, ESP8266 and ESP32 that supports different driver chips项目地址: https://gitcode.com/GitHub_Trending/tf/TFT_eSPITFT_eSPI 是一个面向 ESP32、ESP8266、树莓派PicoRP2040和 STM32 的 Arduino 图形库专门用来驱动TFT彩屏让它显示文字、图形和图片。读完这篇你能完成选配置、接屏幕、跑通示例这三件事。 能力一览它到底能干什么先说工作模式你不在代码里写引脚库根据库内的配置文件自动选驱动和接线方式。四种平台的支持情况如下硬件平台兼容的驱动芯片核心特性RP2040树莓派PicoILI9341、ST7789、HX8357B/C、GC9A01 等SPI、8位和16位并行全支持DMA 三种接口都有ESP32含 S2/S3/C3ILI9341、ILI9488、ST7796、ST7789 等SPI 带 DMAESP32 和 S3 支持 8位并行ESP8266ILI9341、ST7735、ILI9163 等4线 SPI官方建议从 ILI9341 屏入门STM32F1/F2/F4/F7ILI9341、ST7796 等SPI DMA、8位并行适配 Nucleo 64/14420 多款驱动芯片的初始化代码都放在 TFT_Drivers/ 目录XPT2046 触摸控制器是库内置的不用另装驱动。三步点亮从拿到项目到第一次输出第1步拿源码。克隆仓库把 TFT_eSPI 文件夹放进 Arduino IDE 的 libraries 目录git clone https://gitcode.com/GitHub_Trending/tf/TFT_eSPI第2步选硬件配置。这是唯一容易卡住的环节。打开 User_Setups/找和你板子、屏幕匹配的文件用它的内容覆盖库根目录的 User_Setup.h。ESP32 TTGO 屏选 Setup25_TTGO_T_Display.hPico 配 ILI9341 选 Setup60_RP2040_ILI9341.h。多套硬件的用户改 User_Setup_Select.h一次只解开一行注释就能切换配置。PlatformIO 用户可在 platformio.ini 里指定外部配置说明见 docs/PlatformIO/。第3步烧最小程序。新建草图写入下面内容看屏幕#include TFT_eSPI.h TFT_eSPI tft TFT_eSPI(); void setup() { tft.init(); tft.setRotation(1); tft.fillScreen(TFT_BLACK); tft.setTextColor(TFT_WHITE); tft.setCursor(0, 0); tft.println(Hi, TFT!); } void loop() {}屏幕亮起并打出文字说明驱动和引脚都没问题。接线不踩坑各开发板怎么连ESP32 UNO 扩展板8位并行MCUfriend 风格的 UNO 外形20 排针直接插板并行接口比 SPI 快得多。先对照官方改装图确认排针位置再上屏。![ESP32 UNO 板子改装示意](https://raw.gitcode.com/GitHub_Trending/tf/TFT_eSPI/raw/16e37595040eac69cd628e4bffb56fc30cad6299/docs/ESP32 UNO board mod/ESP32 UNO board mod.jpg?utm_sourcegitcode_repo_files)引脚功能都标在这张图上接线时核对片选、复位和背光![ESP32 UNO 板子引脚图](https://raw.gitcode.com/GitHub_Trending/tf/TFT_eSPI/raw/16e37595040eac69cd628e4bffb56fc30cad6299/docs/ESP32 UNO board mod/ESP32 UNO board pinout.jpg?utm_sourcegitcode_repo_files)树莓派显示模块3.5 英寸 RPi 屏走 40 针扩展口注意背光和触摸片选CS是两条独立的线别接反。通用 SPI 屏只需 MOSI数据、SCLK时钟、DC数据/命令切换有的屏标 RS 或 A0、CS片选4 根信号线加背光。ESP8266 用户只能用这种接法它的 GPIO 不够并行口用。 实战示例从显示文字到交互界面示例按屏幕分辨率分文件夹选和你屏幕匹配的尺寸目录即可。文字打印测试——验证字体和背景色。路径 examples/320 x 240/TFT_Print_Test/TFT_Print_Test.ino要改的参数是 setup() 里的 tft.setRotation()0 到 3 对应四种方向。精灵图演示——在内存里先画好再整块贴上屏幕动画不闪烁。路径 examples/Sprite/Sprite_draw/Sprite_draw.ino要改的参数是文件头部的 WIDTH 和 HEIGHT16位色深下占用 2×宽×高 字节 RAM不够就调小。抗锯齿图形——平滑圆弧和圆角矩形。路径 examples/Smooth Graphics/Smooth_Graphics_Demo/Smooth_Graphics_Demo.ino要改的参数是 setRotation()视角不同抗锯齿效果差异明显按屏幕说明书角度调。触摸校准——XPT2046 触屏的原始坐标和像素坐标对不上跑一遍拿到校准值。路径 examples/Generic/Touch_calibrate/Touch_calibrate.ino要改的参数是校准前的旋转值把串口输出的 5 个数粘回 setTouch() 即可。工具箱进阶功能速览平滑字体抗锯齿矢量字体大小可任意缩放见 Extensions/Smooth_font.h精灵图内存帧缓冲实现无闪烁动画见 Extensions/Sprite.h触摸控制XPT2046 读写与标定见 Extensions/Touch.h按钮组件带回调的 GUI 按钮见 Extensions/Button.cpp图片格式PNG 看 examples/PNG Images/BMP 看 examples/Generic/TFT_SPIFFS_BMP/JPG 看 examples/160 x 128/TFT_flash_jpg/免费字体FreeMono、FreeSans 等 9/12/18/24 号全套在 Fonts/GFXFF/点不亮屏排查手册1. 整屏不亮完全黑原因User_Setup.h 里选的驱动芯片和屏幕实际芯片不一致 处理只保留一个 #define xxx_DRIVER按屏幕丝印型号选2. 颜色发怪红蓝对调原因屏幕是 BGR 色序配置默认 RGB 处理User_Setup.h 里把 TFT_RGB_ORDER TFT_BGR 那行取消注释3. 只出一竖条或画面整体错位原因引脚定义和实际接线对不上 处理逐一核对 TFT_CS、TFT_MOSI、TFT_SCLK 三行再看 DC 线4. 触摸无反应原因触摸芯片的片选脚没在配置里定义 处理补上触摸 CS 引脚跑 examples/Test and diagnostics/ 下的 Test_Touch_Controller 看串口有没有数值变化5. ESP8266 接 8 位并行屏不亮原因ESP8266 的 GPIO 数量不够库不支持它的并行接口 处理换 4 线 SPI 屏或用 ESP32、STM32 接并行屏6. 树莓派 ILI9486 屏不认原因只支持 Waveshare 用 74HC 逻辑芯片做 16 位串行接口的设计 处理换 MHS 系列的 ILI9486 或 ST7796 树莓派屏下一步延伸路径到这里你手里有一个能出字的屏幕和一套可复用的配置。接下来按需求走换硬件看 User_Setups/ 里的 80 多个现成模板学功能看 examples/ 按分辨率分好的示例查安装细节看 docs/。遇到问题先跑 examples/Test and diagnostics/ 里的诊断程序它能把当前配置完整打印到串口比口述更快定位问题。【免费下载链接】TFT_eSPIArduino and PlatformIO IDE compatible TFT library optimised for the Raspberry Pi Pico (RP2040), STM32, ESP8266 and ESP32 that supports different driver chips项目地址: https://gitcode.com/GitHub_Trending/tf/TFT_eSPI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考