玩转 ESP32 + Arduino(二十八) TFT_eSPI库驱动ST7789

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了玩转 ESP32 + Arduino(二十八) TFT_eSPI库驱动ST7789相关的知识,希望对你有一定的参考价值。

参考技术A 我们用到的库 TFT_eSPI

这里我们使用了中景园的ST7789

一般屏幕的引脚定义如下:

接线: 我们直接用VSPI接线

如何在TFT_eSPI中设置引脚??

首先, 我们打开 User_Setup.h , 具体位置在(platformIO平台):

然后根据文件中的提示设置就可以了, 对于ESP32 + ST7789来说, 具体修改了如下内容:

在众多的驱动文件中,选择适合自己屏幕的, 注释掉不用的

对ST7789 ST7735 ILI9163来说, 要设置宽高

注释掉其他的定义, 定义自己的引脚

第三步是配置字库, ESP32内存足够, 不用配置了,都带着就行
第四步是 配置SPI的频率 / 配置用VSPI(默认)还是HSPI /

因为上面我们的设置是自定义设置, 所以在 User_Setup_Select.h 中, 应启用自定义配置, 注释其他配置文件

关于颜色值, TFT一般都使用16位的RGB565颜色,在本库中, 典型颜色已经定义好了:

在填入颜色的地方填入此函数可以开启alpha半透明通道

编号范围是 1、2、4、6、7、8,不同的编号代表不同的字体, 不同的字体由于分辨率不同, 基本大小不同

TFT_eSPI自带了很多自定义库, 而且也可以自己去生成新的自定义库.

默认的自定义字体库在:

如果想学习自定义字库用法, 请参看例程:

初始化屏幕, 如果是ST7735,可以往里面传一个参数, 具体用到时再看

填充全屏幕, 后面是颜色值,

设置文本大小可以放大字体的显示,但是字体的"分辨率"是不会变的

特别注意: 字库7是仿7段数码屏的样式

xbm是一种简单的双色图片位图格式,在早期的cgi中运用较多,目前多用于计数器上

这里TFT_eSPI推荐了一个在线XBM制作工具:
https://www.online-utility.org/image/convert/to/XBM
实测非常好用

以上是关于玩转 ESP32 + Arduino(二十八) TFT_eSPI库驱动ST7789的主要内容,如果未能解决你的问题,请参考以下文章

玩转 ESP32 + Arduino (十九) SIM800L调试(基于TTGO T-CALL)

玩转 ESP32 + Arduino (十一) EEPROM NTP对时 蓝牙透传

玩转 ESP32 + Arduino (八) U8G2驱动OLED

掌控板IO接口编程入门 | 用Arduino玩转掌控板(ESP32)系列

玩转 ESP32 + Arduino (十六) 通过mqtt协议连接阿里云

玩转 ESP32 + Arduino (十七) deepsleep深睡眠模式