TouchGFX如何校准电阻触摸屏
1. 摘要
本文档主要介绍,如何在TouchGFX框架下,实现电阻式触摸屏的校准。分两种方法介绍,三点校准和四点校准。以800*480电阻屏为例。
2. 准备工作
可以正常运行的TouchGFX工程
电阻触摸屏
3. 校准添加
电阻式触摸屏在实际应用中必须进行校准,而校准有多种方法,一种是使用TouchGFX自带的触摸屏校准,内置三点式校准,另一种就是我们自己实现校准。首先先来看使用TouchGFX自带的校准。
3.1 内置校准
TouchGFX 包含了一个三点式的校准,使用时需要包含相应头文件。如下图蓝色底纹选中的 头文件TouchCalibration.hpp
文件中定义了一个校准的类,
具体的算法原理可以参考由Carlos E. Vidales. 写的文章。
http://www.embedded.com/design/system-integration/4023968/How-To-Calibrate-Touch-Screens
从电阻触摸屏的结构到算法都进行了讲解,采用下图三点实现触摸屏的校准。
在实际应用中,我们除了包含相应头文件,还要获取三点的触摸值,也就是ADC值,和参考点的坐标带入算法中。
在触摸初始化中添加
就可以了,TouchGFX会自动将触摸值转换为坐标值通过函数
bool STM32TouchController::sampleTouch(int32_t& x, int32_t& y)。这样就可以实现触摸屏的操作了,
3.2 自己实现校准
自己实现校准,我们采用4点校准方法,移植之前我们在emwin工程中使用的校准方法,依次在屏幕上四个角画圆,等待触摸,获取ADC值。按照TouchGFX用户代码层的架构,
在参考点(20,20)画圆,等待触摸,记录ADC值
在参考点(760,20)画圆,等待触摸,记录ADC值
在参考点(20,440)画圆,等待触摸,记录ADC值
在参考点(760,440)画圆,等待触摸,记录ADC值
添加代码
本文地址:https://blog.csdn.net/wgp2hpp/article/details/112001055