45| 6
|
[项目] 【花雕学编程】Arduino动手做(238)--ESP32 CYD 测试触摸屏 |
ESP32-CYD(2432S028)液晶2.8寸屏开发板使用ESP32-WROOM-32模块作为主控,主控是一款双核MCU,集成了Wi-Fi和蓝牙功能,主频可达240MHz,具有520KB的SRAM、448KB的ROM,闪存容量为4MB+4MB,显示分辨率为240x320,采用电阻式触控式屏幕。该模块包括LCD显示器、背光控制电路、触控式屏幕控制电路、扬声器驱动电路、光敏电路和RGB LED控制电路。支持TF卡界面、序列界面、温湿度感测器界面(DHT11界面)和保留的IO口界面,该模块支持在Arduino IDE、ESP IDE、MicroPython和Mixly中进行开发。 |
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程) 实验二百三十八:ESP32 CYD开发板WiFi蓝牙2.8寸240*320智能液晶显示屏带触摸屏TFT模块 项目实验之十七:ESP32 CYD液晶2.8寸开发板显示文本和测试触摸屏 实验开源代码
|
代码解读 1、库文件引入: SPI.h:引入SPI通信协议库,用于与触摸屏和TFT显示屏进行数据通信。 TFT_eSPI.h:引入TFT_eSPI库,用于驱动和管理TFT显示屏。 XPT2046_Touchscreen.h:引入XPT2046_Touchscreen库,专门用于驱动XPT2046触摸屏控制器芯片。 2、TFT显示屏初始化: 创建TFT_eSPI对象tft,用于后续的显示屏操作。 通过tft.init()初始化TFT显示屏,设置显示参数。 设置显示屏的旋转模式,使其与物理连接相匹配。 3、触摸屏初始化: 定义触摸屏的控制引脚,并创建SPIClass对象touchscreenSPI和XPT2046_Touchscreen对象touchscreen。 通过touchscreen.begin()初始化触摸屏,设置其通信协议和中断引脚。 4、屏幕和触摸屏参数设置: 定义屏幕的宽度、高度和字体大小,这些参数用于后续的显示和触摸校准。 定义变量x、y、z来存储触摸屏的坐标和压力值。 5、触摸屏数据处理: printTouchToSerial()函数用于将触摸数据输出到串口监视器,方便调试。 printTouchToDisplay()函数用于将触摸数据实时显示在TFT屏幕上,增强用户交互体验。 6、主循环中的触摸检测: 在loop()函数中,通过touchscreen.tirqTouched()和touchscreen.touched()检测触摸屏是否被触摸。 使用touchscreen.getPoint()获取触摸点的原始数据,并使用map()函数将这些数据转换为屏幕坐标系。 调用printTouchToSerial()和printTouchToDisplay()函数,将触摸信息输出到串口和显示屏。 7、触摸屏校准: 使用map()函数对触摸屏的原始坐标进行校准,以匹配TFT显示屏的实际分辨率。 8、用户界面反馈: 在TFT显示屏上显示触摸点的坐标和压力值,提供即时的用户操作反馈。 以上要点涵盖了从库文件引入、硬件初始化、参数设置到用户交互的全过程,展示了如何使用Arduino和相应的库来实现一个基本的触摸屏应用。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed