ESP32_驱动TFT彩屏_Arduino

本文详细介绍了如何使用ESP32和Arduino驱动TFT彩屏,涵盖了库的选择与安装、自定义配置、颜色和字体设置、API使用等关键步骤,包括初始化屏幕、填充颜色、文字与图形绘制、图片显示等功能。
摘要由CSDN通过智能技术生成

一、我们用到的库

1、库的简单介绍

库下载链接(github)

TFT_eSPI

TFT_eSPI支持各种常用的驱动芯片,比如 ST7735ST7789ILI9341等,兼容性较好

2、关于库的安装

第一种方式就是在Arduino的库管理器中, 搜索TFT_eSPI,然后点击安装即可
在这里插入图片描述
第二种方式就是通过GIT直接从github上下载, 库的下载链接放到了最上面。下载之后是ZIP文件,由于我使用的是VScode的PlatformIO的编译环境,所以是使用的添加路径的形式。
关于这部分的操作请参考,PlatformIO自定义库设置

二、修改自定义库驱动文件

1、找到库的安装路径

由于TFT_eSPI库包含了不同的彩屏驱动,所以我们需要进行一定的配置。
我们找到我们的库安装路径,如果你是使用GIT通过clone方式克隆的库,那么路径肯定是已经知道的, 如果是通过Arudino的库管理器下载的,那么可以通过以下方式找到自己的库下载路径
文件——首选项
在这里插入图片描述
进入这个文件路径后,可以找到自己的库下载路径。

找到自己的路径以后,我们直接找到 User_Setuo.h这个文件,根据自己的使用的TFT彩屏的类型进行选择

2、设置彩屏的驱动芯片类型

在这里插入图片描述

3、设置屏幕的宽高

在这里插入图片描述

4、设置彩屏的IO引脚

在这里插入图片描述

5、字库配置,如果内存足够,就无需修改

在这里插入图片描述

6、SPI的频率配置,默认即可

在这里插入图片描述

7、在User_Setup_Select.h中选择用户自定义配置

这一部分,库文件默认已经注释,如果出现自定义配置无法生效的问题, 可以看一下是不是这里没有注释的原因
在这里插入图片描述
到这里就完成了TFT_eSPI库的配置。

三、颜色和字体

1、颜色

对于彩屏来讲,显示颜色的原理同彩色RGBLED灯原理一致,在TFT中一般使用16位的RGB565颜色。
TFT_eSPI.h中,已经将典型的颜色定义好了

/***************************************************************************************
**                         Section 6: Colour enumeration
***************************************************************************************/
// Default color definitions
#define TFT_BLACK       0x0000      /*   0,   0,   0 */
#define TFT_NAVY        0x000F      /*   0,   0, 128 */
#define TFT_DARKGREEN   0x03E0      /*   0, 128,   0 */
#define TFT_DARKCYAN    0x03EF      /*   0, 128, 128 */
#define TFT_MAROON      0x7800      /* 128,   0,   0 */
#define TFT_PURPLE      0x780F      /* 128,   0, 128 */
#define TFT_OLIVE       0x7BE0      /* 128, 128,   0 */
#define TFT_LIGHTGREY   0xD69A      /* 211, 211, 211 */
#define TFT_DARKGREY    0x7BEF      /* 128, 128, 128 */
#define TFT_BLUE        0x001F      /*   0,   0, 255 */
#define TFT_GREEN       0x07E0      /*   0, 255,   0 */
#define TFT_CYAN        0x07FF      /*   0, 255, 255 */
#define TFT_RED         0xF800      /* 255,   0,   0 */
#define TFT_MAGENTA     0xF81F      /* 255,   0, 255 */
#define TFT_YELLOW      0xFFE0      /* 255, 255,   0 */
#define TFT_WHITE       0xFFFF      /* 255, 255, 255 */
#define TFT_ORANGE      0xFDA0      /* 255, 180,   0 */
#define TFT_GREENYELLOW 0xB7E0      /* 180, 255,   0 */
#define TFT_PINK        0xFE19      /* 255, 192, 203 */ //Lighter pink, was 0xFC9F      
#define TFT_BROWN       0x9A60      /* 150,  75,   0 */
#define TFT_GOLD        0xFEA0      /* 255, 215,   0 */
#define TFT_SILVER      0xC618      /* 192, 192, 192 */
#define TFT_SKYBLUE     
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ESP32-CAM是Espressif Systems针对ESP32开发板(如ESP32-32)推出的一种扩展模块,它集成了一个摄像头模块和图像处理能力,使得ESP32能够轻松地进行图像捕捉、处理以及网络传输,无需额外的摄像头模块。使用ESP32-CAM,开发者可以快速实现物联网应用中的视觉功能,比如安防监控、环境监测等。 以下是ESP32-CAM的主要特点: 1. 内置摄像头:通常集成有一个低分辨率的摄像头,如 OV7670或同类传感器,用于实时视频流采集。 2. 图像传感器:支持JPEG编码,可以直接获取摄像头捕获的图片数据。 3. 连接选项:可以通过Wi-Fi或蓝牙与外部设备通信,将图片发送到云端或本地设备。 4. 单片机功能:ESP32强大的计算能力支持预处理图像数据和简单的机器学习任务。 **如何使用ESP32-CAM with Arduino:** - **安装库:**你需要下载并安装适用于ESP32的`Adafruit_Cam`或`esp32-cam`库,这些库简化了摄像头的配置和数据访问。 - **初始化摄像头:**通过库提供的函数设置摄像头的分辨率、帧率等参数。 - **图像处理:**读取摄像头捕获的图片数据,可以进行裁剪、滤镜应用等操作。 - **网络通信:**通过`WiFiClient`或`BLEClient`发送图片数据到服务器或者设备。 - **事件驱动:**根据应用场景,可能需要编写事件回调函数来处理特定的图像分析结果。 **相关问题--:** 1. ESP32-CAM是否支持自定义摄像头模块? 2. 如何在Arduino IDE中配置和连接ESP32-CAM? 3. 如何处理ESP32-CAM采集的图片数据以便于上传到云端?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值