四线电阻式触摸屏驱动的优化

简介: 触摸屏在电子产品中用得越来越多,其技术也在不断发展。目前常见的有电阻式、电容式、红外式和表面声波式等几大类,其中电阻式最为普遍。最近在WinCE下调试了一款四线电阻式的触摸屏驱动,利用检测触摸压力的方法实现了动态调整触摸屏的灵敏度。

      触摸屏在电子产品中用得越来越多,其技术也在不断发展。目前常见的有电阻式、电容式、红外式和表面声波式等几大类,其中电阻式最为普遍。最近在WinCE下调试了一款四线电阻式的触摸屏驱动,利用检测触摸压力的方法实现了动态调整触摸屏的灵敏度。

      一般的嵌入式处理器中会有几个通道的AD,通常有四个通道用于连接触摸屏的XP、XM、YP和YM。如果MCU 没有Touch Screen Interface,可以选择如TSC2003一类的触摸屏控制器芯片。MCU可通过IIC总线与其通讯,以得到相应的触摸屏AD采样值。目前正在调试的TCC8900芯片内部集成了触摸屏控制器,原厂的BSP中也提供了相应的驱动,实际测试时发现,该驱动在4.3寸屏上工作得挺好,但在某些7寸屏上经常会出现跳笔,尤其是在开始按下和最后抬起时,跳笔非常严重。在快速手写时也有跳笔的情况,并且导致笔迹非常不圆滑。在触摸驱动中使用多次采样、去头掐尾求平均等简单滤波算法,问题仍然存在。经分析,问题的根源在于轻点触摸屏时采样值严重不准,所以即使采用滤波算法也无济于事了。解决问题要从根本出发,在上报数据时须严进宽出,压力较小的采样直接PASS,这样可以很好的去除一些抖动和跳笔。

      参考TSC2003获取触摸压力的方法修改触摸驱动,单独获取XP、YP等值,通过计算得到按下触摸屏时的电阻值。该值与点击触摸屏的位置无关,只与点击触摸屏压力大小有关,压力越大,该值越小。在实际使用时规定一个参考值,当该值小于该参考值时才认为是可靠按下,将采样得到的坐标值上报,否则直接扔掉。由于触摸屏硬件的差别,不同触摸屏的灵敏度可能不一样,可以通过应用程序修改驱动中的参考值,从而实现动态调整触摸屏灵敏度。修改后实际测试发现,效果比原来要好一点。

      按下四线电阻式触摸屏,采样时的等效电路图如下所示。

clip_image002

XPOS=V*R2/(R1+R2) (式1)

Z1POS=V*R2/(R3+Rt+R2) (式2)

Z2POS=V*(Rt+R2)/(R3+Rt+R2) (式3)

由式2和3可得,Rt=(Z2/Z1-1)*R2 (式4)

由式1可得R2=XPOS*(R1+R2)/V,即R2=XPOS*(RXplate)/V (式5)

将式5和式4可得,

clip_image004

      对于同一触摸屏来说,Rx-plate是固定的,因为使用的是12bit的AD,故除以4096。对于触摸屏压力检测来说,式6即能说明当前压力大小关系。

Ft=XPOS*Z2POS/Z1POS-XPOS (式6)

      Ft的绝对值越小,说明按下越可靠,采样值有效。反之,可以认为是轻按,采样值无效。

目录
相关文章
|
5月前
|
Android开发 芯片 SoC
全志H713/H618方案:调焦电机(相励磁法步进电机)的驱动原理、适配方法
本文介绍了全志H713/H618方案中调焦电机(相励磁法步进电机)的驱动原理、适配方法,并通过DTS配置和驱动实现代码,详细说明了如何控制步进电机的正反转和步数,以及如何进行测试。
274 1
全志H713/H618方案:调焦电机(相励磁法步进电机)的驱动原理、适配方法
|
6月前
|
异构计算
FPGA强化(8):HDMI显示器驱动
FPGA入门(8):VGA显示器驱动
53 0
|
8月前
|
监控 算法 定位技术
LabVIEW压电驱动迟滞补偿控制
LabVIEW压电驱动迟滞补偿控制
48 1
|
8月前
|
存储 芯片
键盘驱动程序设计
键盘驱动程序设计
133 0
|
芯片
LED面板显示屏驱动芯片
一、基本概述 TM1638是一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用IC,内部集成有MCU数字接口、数据锁存器、LED驱动、键盘扫描等电路。本产品质量可靠、稳定性好、抗干扰能力强。 二、主要应用场合 主要适用于家电设备(智能热水器、微波炉、洗衣机、空调、电磁炉)、机顶盒、电子称、智能电表等数码管或LED显示设备。 三、管脚说明 DIO口输出数据时为N管开漏输出,在读键的时候需要外接1K-10K的上拉电阻。推荐10K的上拉 电阻。DIO在时钟的下降沿控制N管的动作,此时读数时不稳定,在时钟的上升沿读数才时稳定。 四、串行数据传输 读取和接收1个BIT都在时钟的上
|
芯片
一款LED段码显示屏驱动芯片方案
一、基本概述 TM1620是一种LED(发光二极管显示器)驱动控制专用IC,内部集成有MCU数字接口、数据锁存器、LED驱动等电路。本产品质量可靠、稳定性好、抗干扰能力强。 二、基本特性 采用CMOS工艺 显示模式(8段×6位~10段×4位) 辉度调节电路(8 级占空比可调) 串行接口(CLK,STB,DIN) 振荡方式:内置RC振荡 内置上电复位电路 内置数据锁存电路 内置针对LED反偏漏电导致暗亮问题优化电路 抗干扰能力强 封装形式:SOP20 三、主要应用 主要适用于家电设备(智能热水器、微波炉、洗衣机、空调、电磁炉)、机顶盒、电子称、智能电表等数码管或LED
134 0
CMOS摄像头驱动分析-i2c驱动
CMOS摄像头驱动分析-i2c驱动
201 0
LabVIEW控制Arduino驱动1602液晶显示屏(基础篇—10)
本篇博文将利用LIAT中的LCD显示函数库,驱动1602液晶显示屏。
LabVIEW控制Arduino驱动数码管(基础篇—11)
利用LIAT中的数码管显示函数库,通过LabVIEW软件控制Arduino Uno控制板,将特定的数据显示在单个数码管上,实现数码管的滚动显示。
|
Linux
ARM6818开发板输入设备(触摸屏)操作(开发五子棋游戏)
ARM6818开发板输入设备(触摸屏)操作(开发五子棋游戏)
462 0