欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

TouchGFX如何校准电阻触摸屏

程序员文章站 2022-03-06 18:29:03
1. 摘要本文档主要介绍,如何在TouchGFX框架下,实现电阻式触摸屏的校准。分两种方法介绍,三点校准和四点校准。以800*480电阻屏为例。2. 准备工作可以正常运行的TouchGF......

1. 摘要

本文档主要介绍,如何在TouchGFX框架下,实现电阻式触摸屏的校准。分两种方法介绍,三点校准和四点校准。以800*480电阻屏为例。

2. 准备工作

可以正常运行的TouchGFX工程

电阻触摸屏

3. 校准添加

电阻式触摸屏在实际应用中必须进行校准,而校准有多种方法,一种是使用TouchGFX自带的触摸屏校准,内置三点式校准,另一种就是我们自己实现校准。首先先来看使用TouchGFX自带的校准。

3.1 内置校准

TouchGFX 包含了一个三点式的校准,使用时需要包含相应头文件。如下图蓝色底纹选中的 头文件TouchCalibration.hpp

TouchGFX如何校准电阻触摸屏

文件中定义了一个校准的类,

TouchGFX如何校准电阻触摸屏

TouchGFX如何校准电阻触摸屏

具体的算法原理可以参考由Carlos E. Vidales. 写的文章。

http://www.embedded.com/design/system-integration/4023968/How-To-Calibrate-Touch-Screens

   TouchGFX如何校准电阻触摸屏

从电阻触摸屏的结构到算法都进行了讲解,采用下图三点实现触摸屏的校准。

TouchGFX如何校准电阻触摸屏

在实际应用中,我们除了包含相应头文件,还要获取三点的触摸值,也就是ADC值,和参考点的坐标带入算法中。

TouchGFX如何校准电阻触摸屏

    在触摸初始化中添加

TouchGFX如何校准电阻触摸屏

就可以了,TouchGFX会自动将触摸值转换为坐标值通过函数

bool STM32TouchController::sampleTouch(int32_t& x, int32_t& y)。这样就可以实现触摸屏的操作了,

3.2 自己实现校准

自己实现校准,我们采用4点校准方法,移植之前我们在emwin工程中使用的校准方法,依次在屏幕上四个角画圆,等待触摸,获取ADC值。按照TouchGFX用户代码层的架构,

TouchGFX如何校准电阻触摸屏

TouchGFX如何校准电阻触摸屏

在参考点(20,20)画圆,等待触摸,记录ADC值

TouchGFX如何校准电阻触摸屏

在参考点(760,20)画圆,等待触摸,记录ADC值

TouchGFX如何校准电阻触摸屏

在参考点(20,440)画圆,等待触摸,记录ADC值

TouchGFX如何校准电阻触摸屏

在参考点(760,440)画圆,等待触摸,记录ADC值

添加代码

TouchGFX如何校准电阻触摸屏

本文地址:https://blog.csdn.net/wgp2hpp/article/details/112001055