用户登录
用户注册

分享至

TouchGFX如何校准电阻触摸屏

  • 作者: 小丶土逗
  • 来源: 51数据库
  • 2021-09-03

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值

添加代码

软件
前端设计
程序设计
Java相关