本示例使用ESP32开发板来进行测试,显示屏要接7根信号线,故使用1个PH2.0五口插座1个PH2.0六口插座,接线如下图
记下显示屏引脚对应的编号,在后面程序里需要进行对应配置。
TFT_eSPI一个通过SPI方式驱动LCD屏幕的Arduino三方库,支持众多的驱动芯片如ILI9341,ST7789等,对于Arduino开发下的屏幕开发提供了统一的开发SDK,即方便了开发,也利于不同驱动芯片间的移植。
1)使用库管理界面安装TFT_eSPI库,如下图
安装最新版本即可。
2)修改配置文件User_Setup.h中的相关信息,文件位置如下图
要修改的地方有以下几处
a.设置驱动芯片
取消 #define ILI9341_DRIVER 这一行的注释;
b.设置屏幕像素(这里用竖屏显示)
修改 #define TFT_WIDTH 240
修改 #define TFT_HEIGHT 320
c.设置相关引脚
3)打开TFT_eSPI库自带的示例程序TFT_Print_Test.ino
4)将开发板接到电脑的USB端口,然后编译上传到开发板,运行效果如下图
TFT_eSPI库自带了许多示例程序,各位看官可以逐一测试。
Arduino_GFX 是一个 Arduino 图形库,支持各种数据总线接口的众多显示驱动芯片。这个库从Adafruit_GFX、TFT_eSPI和Ucglib等三方库汲取了诸多优点,是一个很优秀图形开发工具库。
1)使用库管理界面安装GFX Library for Arduino库,如下图
2)打开GFX Library自带的示例程序HelloWorld.ino
将上图红框内的代码替换成如下代码:
#define GFX_BL 15
#define TFT_BL 15
// 通信方式
Arduino_DataBus *bus = new Arduino_ESP32SPI(
/* DC */ 25,
/* CS */ 27,
/* SCK */ 16,
/* MOSI */ 17,
/* MISO */ 14);
// 芯片驱动程序
Arduino_GFX *gfx = new Arduino_ILI9341(bus,
/* RST */ 26,
/* ROTATION */ 0);
3)将开发板接到电脑的USB端口,然后编译上传到开发板,运行效果如下图
4)显示中文,打开U8g2FontChinese.ino,步骤同上,修改代码也同上,编译时可能会提示“程序占用空间太多”的错误,可做如下修改
运行效果图如下