基于STR750与TSC2003的触摸屏接口设计
扫描二维码
随时随地手机看文章
技术经过十几年的发展已经成为一种方便、经济的人机界面输入手段,广泛应用于手机、掌上电脑、车载设备及银行ATM等领域。根据工作原理的不同,可以分为电阻式、红外式、电容式和声表面波式4种类型,其中应用最为广泛的是电阻式。本文讨论2种电阻式触摸屏的接口设计,分别为触摸屏与ARMSTR750直接连接及其通过专用触摸屏检测器件连接。
1 器件简介
1.1 电阻式触摸屏的分类与工作原理
电阻式触摸屏分为四线与五线2种形式。其中四线电阻式触摸屏由于造价低廉和便于实现,在工业和掌上设备中得到了广泛的使用。电阻式触摸屏的本质是电阻分压器,触摸屏由2层被绝缘层隔开的电阻层构成。当有触摸动作按下时,2层电阻层因形变达到电气连接,从而通过A/D检测2层电阻层间的电压值来确定触摸点的位置。
1.2 STR750
STR750是意法半导体公司生产的基于—S的32位RISCCPU。STR750最高主频可达,具有16KBRAM,最大片内为256KB,最大支持64MB扩展F1ash。通用I/O(GPIO)支持模拟输入、输入上拉、输入下拉、输入悬浮、推挽输出、开漏输入、推挽复用和开漏复用8种配置模式。模数转换器(ADC)共有16个通道,支持10位A/D采样。
1.3
是TI公司生产的采用一16封装的四线电阻式触摸屏控制芯片,集成了多个功能模块,具有测量电量、片上温度和触摸压力等功能,通过I2C总线与连接。是一款基于命令控制的触摸屏检测器件,通过I2C总线发送控制命令来控制芯片采集X轴、Y轴和Z轴的压力等相关量。
1.4 触摸屏与的接口分类
触摸屏与的接口有利用专用触摸屏检测芯片和利用单片机自身A/D转换来检测触摸屏位置这两种方式。利用专用触摸屏检测芯片检测触摸屏位置时,单片机与专用芯片通过总线进行通信,接口的外围电路简单,受外界干扰小,精度较高,但专用芯片的使用增加了成本。利用单片机自身的A/D转换检测时,单片机直接连接触摸屏进行A/D检测,接口的外围电路较复杂,受外界干扰大,精度较差,但成本较低。
2 触摸屏与STR750的接口
2.1 利用STR750自带A/D转换
STR750可以通过自身推挽输出,在触摸屏的X轴和Y轴上施加电压。当输出电压施加在X轴上时,利用STR750A/D采样Y+轴的电压来获取Y轴的坐标值;当输出电压施加在Y轴上时,A/D采样X+轴的电压来获取X轴的坐标值。
STR750的P0.01引脚通过电阻R1连接X+。当需要在X轴上施加电压时,PO.01引脚输出+5V电压。PO.02引脚为STR750ADC通道O,直接连接X+。当在Y轴上施加电压时,通过PO.02读取X轴坐标。P1.12引脚连接在X一上,当需要在X轴上施加电压时接地。STR750的P1.13引脚通过电阻R2连接Y+,当需要在Y轴上施加电压时,P1.13引脚输出+5V电压。P1.04引脚为STR750ADC通道9,直接连接Y+。当在X轴上施加电压时,通过P1.04读取Y轴坐标。P1.14引脚连接在Y一上,当需要在Y轴上施加电压时接地。触摸屏与STR750的连接如图1所示。
系统开始运行后,将P0.01和P1.12配置为推挽输出低电平(即令X+和X一两个端口接地),P0.02配置为模拟输入,P1.13配置为输入上拉保持高电平并检测外部触摸动作,P1.14配置为输入悬浮并保持悬浮态(即在Y+上施加5V电压),P1.04配置为模拟输入。如果系统采用中断方式检测触摸屏按下,则需将P1.13配置为外部下降沿触发中断,那么系统开始运行后,如果有触摸动作,Y+上的电压通过X+和X一连接到地,从而触发P1.13引脚的外部下降沿中断。
外部下降沿触发中断后,系统经过一段时间的消抖操作,开始检测X轴坐标。此时,将P0.01引脚配置为推挽输出高电平,在X+上施加电压,并将P1.13引脚配置为输入悬浮,去除在Y+上施加的电压。通过对P1.04引脚A/D采样,读取当前触摸点的X轴坐标。读取完成后,将P0.01和P1.12引脚配置为输入悬浮,去除X轴方向的施加电压,并将P1.13配置为推挽输出高电平,P1.14配置为推挽输出低电平,即在Y轴方向上施加电压。通过对PO.02引脚进行A/D采样,读取到当前触摸点的Y轴坐标。这样,就完成了一次对当前触摸点的坐标轴采样过程。循环读取坐标轴数值,通过计算平均值及剔除野值得到触摸屏坐标值。输出坐标值后,将每个引脚的状态配置为初始状态,等待下一次中断的发生。
这里需要注意的是,在变换X轴和Y轴方向上的电压时,需要在变换电压方向后加入一段延时,等待电压稳定,使A/D变换后读取到的值逼近真实值。通过STR750的引脚配置变换来读取X轴和Y轴坐标值的方法具有结构简单、易实现、成本低等优势,可用于一般的手指触摸界面。如果需要高精度的手写操作,或者触摸屏与STR750之间有较长的连接,这时就需要用到专门的触摸屏检测芯片。
2.2 利用专用触摸屏芯片
TSC2003的参考连接如图2所示。
STR750向TSC2003发送控制字节来控制TSC2003的操作。其中d7~d4是配置位,用来配置当前TSC2003的操作类型;d3~d2是节能位,用来配置是否打开内部参考电压和ADC;d1为精度控制位,用来选择12位采样精度或8位采样精度;d0位为保留位。TSC2003控制命令格式如下:
TSC2003上电后,由STR750通过I2C总线向TSC2003发送控制命令,其中配置位为“测量X轴坐标”,发送该控制命令使TSC2003进入等待状态。当TSC2003检测到有触摸按下事件,会在IRQ引脚产生下降沿电平,从而触发STR750的下降沿中断。进入中断后,经过消抖延时,STR750向TSC2003发送控制命令,配置位为“测量X轴坐标”。通过读取TSC2003状态获取X轴坐标值。下一步,STR750向TSC2003发送控制命令,配置位为“测量y轴坐标”,通过读取TSC2003状态获取Y轴坐标值。至此,完成一次读取X轴和Y轴坐标的操作。这样读取若干次坐标轴,通过计算平均值和剔除野值得到触摸屏坐标值。整个过程中控制命令的节能位和精度控制位分别始终保持为“在2次转换间节能”和“12位采样精度”。这里需要注意的是,在发送控制命令读取坐标轴的2次操作之间需要一段延时以获得比较准确的A/D采样值,一般至少延时10μs。
3 总结
本文针对四线式触摸屏与单片机间2种形式的接口进行了讨论,这2种方案均达到了很好的实际使用效果。不同的设计思路适用于不同的应用领域,以达到节约成本、降低功耗和提供满足需求的触摸屏检测精度等目的。