TFT_LCD使用TFT_eSPI库显示文本信息

TFT_LCD使用TFT_eSPI库显示文本信息

上篇帖子例举了使用Adafruit_GFX.h 库显示文本信息,本想直接举例说明使用TFT_eSPI库显示文本,但篇幅有点长,怕大家没耐心看,分成两个帖子。下面说明举例说明。
一、实验用品依旧
实验板:ESP32S(NodeMCU-32s)
显示屏:2.4" TFT LCD GMT024-10 驱动芯片ST7789 分辨率 240X320
接线方式:GND、Vcc、SCK-18、SDA-23、RST-26、DC-27、CS-5
主要库文件:TFT_eSPI 2.5.43 (Arduino 库管理器可下载)
程序编辑器:Arduino IDE 2.3.2
二、修改TFT_eSPI 设置
TFT_eSPI.h库和Adafruit_GFX.h 的使用不太一样,它使用前需要先根据自己的情况修改设置。具体做法是,首先在Arduino IDE中找到库管理器,搜索安装TFT_eSPI库,然后找到libraries目录,在此目录打开TFT_eSPI目录,用记事本打开User_Setup.h文件,取消需要使用语句 的注释即可,这个文件中的语句很多,就我们而言只需要很少的一部分,我考出来了,大家嫌麻烦直接删除全部内容,用以下语句替换。

#define USER_SETUP_INFO "User_Setup"
#define ST7789_DRIVER      //
#define TFT_RGB_ORDER TFT_RGB  // Colour order Red-Green-Blue
#define TFT_WIDTH  240 // ST7789 240 x 240 and 240 x 320
#define TFT_HEIGHT 320 // ST7789 240 x 320
#define TFT_INVERSION_OFF
#define TFT_MISO 19
#define TFT_MOSI 23
#define TFT_SCLK 18
#define TFT_CS   5 // Chip select control pin
#define TFT_DC    27  // Data Command control pin
#define TFT_RST   26  // Reset pin (could connect to RST pin)
#define LOAD_GLCD   // Font 1. Original Adafruit 8 pixel font needs ~1820 bytes in FLASH
#define LOAD_FONT2  // Font 2. Small 16 pixel high font, needs ~3534 bytes in FLASH, 96 characters
#define LOAD_FONT4  // Font 4. Medium 26 pixel high font, needs ~5848 bytes in FLASH, 96 characters
#define LOAD_FONT6  // Font 6. Large 48 pixel font, needs ~2666 bytes in FLASH, only characters 1234567890:-.apm
#define LOAD_FONT7  // Font 7. 7 segment 48 pixel font, needs ~2438 bytes in FLASH, only characters 1234567890:-.
#define LOAD_FONT8  // Font 8. Large 75 pixel font needs ~3256 bytes in FLASH, only characters 1234567890:-.
#define LOAD_GFXFF  // FreeFonts. Include access to the 48 Adafruit_GFX free fonts FF1 to FF48 and custom fonts
#define SMOOTH_FONT
#define SPI_FREQUENCY  27000000
#define SPI_READ_FREQUENCY  20000000
#define SPI_TOUCH_FREQUENCY  2500000

三、程序

#include <Arduino.h>
#include <TFT_eSPI.h>
#include <SPI.h>

TFT_eSPI tft;

void setup() {
    tft.init();//TFT——LCD初始化
    tft.fillScreen(TFT_WHITE);//设置屏幕底色为白
    tft.setTextColor(TFT_BLACK);//设置文本为黑
    tft.setCursor (12, 5);//设置起始位置
    tft.print("hello world!");//显示文本
    tft.setTextColor(TFT_BLACK, TFT_BLACK); //设置文本底色和文本颜色
    tft.drawCentreString("Font size 2", 120, 14, 2); //在指定位置显示文本
    tft.drawCentreString("Font size 4", 120, 30, 4);  //在指定位置显示字符
    tft.drawCentreString("12.34", 120, 54, 6);  //在指定位置显示文本
    tft.drawCentreString("12.34 is in font size 6", 120, 92, 2);  //在指定位置显示文本
    }
void loop() {
}

四、效果
在这里插入图片描述
效果还不错,这么小的字还能看得清,哈哈!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值