基于ADS7846的电阻式触摸屏设计
周伟
(电子科技大学光电信息学院2003级研究生2班 610054)
摘要:本文介绍了电阻式触摸屏的基本结构和工作原理,详细阐述了ADS7846在电阻式触摸屏驱动设计中的作用以及基本的触摸屏坐标定位算法,并分析了影响触摸屏定位精度的原因,探讨了提高定位精度的方法。
关键词:触摸屏,坐标定位,坐标变换,电磁兼容
1.前言
随着信息技术的不断发展,人性化设计的重要性越来越凸现出来。由于触摸屏可以使操作简单直观,因此越来越多的手持产品,公共服务类设备采用触摸屏。触摸屏有电阻式触摸屏、电容式触摸屏、表面声波式触摸屏、红外线触摸屏等多种。电阻式触摸屏是目前应用比较广泛的一种,有四线、五线、七线等几种。
2.电阻式触摸屏的工作原理
2.1 电阻式触摸屏结构
典型触摸屏的工作部分一般由三部分组成,如图1所示,这一个电阻式触摸屏的横截面,两层透明的电阻性导体层(玻璃)、两层导体之间的隔离层(隔离玻璃珠)、以及电阻性涂层。电阻性导体层必须选用阻性材料,如铟锡氧化物(ITO)涂在衬底上构成,上层衬底用塑料,下层衬底用玻璃。隔离层为粘性绝缘液体材料,如聚脂薄膜。电极选用导电性能极好的材料(如银粉墨)构成,其导电性能大约为ITO的1000倍。
2.2 电阻式触摸屏原理
电阻式触摸屏是一种传感器,它将矩形区域中触摸点(X,Y)的物理位置转换为代表X坐标和Y坐标的电压。当触摸屏表面受到的压力(如通过笔尖或手指进行按压)足够大时,顶层与底层之间会产生接触。所有的电阻式触摸屏都采用分压器原理来产生代表X坐标和Y坐标的电压。如图2所示,分压器是通过将两个电阻进行串联来实现的。上面的电阻(R1)连接正参考电压(VREF),下面的电阻(R2)接地。两个电阻连接点处的电压测量值与下面那个电阻的阻值成正比。 为了在电阻式触摸屏上的特定方向测量一个坐标,需要对一个阻性层进行偏置:将它的一边接VREF,另一边接地。同时,将未偏置的那一层连接到一个ADC的高阻抗输入端。当触摸屏上的压力足够大,使两层之间发生接触时,电阻性表面被分隔为两个电阻。它们的阻值与触摸点到偏置边缘的距离成正比。触摸点与接地边之间的电阻相当于分压器中下面的那个电阻。因此,在未偏置层上测得的电压与触摸点到接地边之间的距离成正比。
3.ADS7846的基本特性与典型应用
3.1 基本特性
ADS7846是ADI公司生产的一种四线式触摸屏控制器,目前广泛应用于电阻式触摸屏输入系统中。ADS7846数字转换器在一个12位逐次逼近式比较寄存器(SAR)ADC架构上集成了用于驱动触摸屏的低通阻抗开关。这些器件不使用内部基准电压,当以大于125kSaps的吞吐率运行时的最大功耗小于1.4mW。它们还带有10KeV到12KeV的模拟输入ESD保护,增强了抗ESD能力,以避免关键的内部系统元件损坏。使用单2.2V 到5.25V的电源工作。 AD7846串行接口的一次完整操作需要24个DCLK.,前8个脉冲接收8位的命令,并在第6个脉冲纳仙乜疾裳拥?个脉冲开始进入转换阶段,输出12位采样值,转换结束进入空闲阶段。直到24个DCLK结束,CS置高电平,一次测量结束。
3.2 电阻式触摸屏的接口电路与坐标值获取
图3为ADS7846与Philips ARM7芯片LPC2210的接口电路图:
ADS7846芯片通过片内模拟电子开关的切换,将X+(Y+)端接正电源VCC,X-(Y-)接地,将X+(Y+)和X-(Y-)端以差动形式接到A/D转换器的输入端。当用笔点击触摸屏的不同位置时,由于输入到A/D转换器的电压不同(见前面的分压原理),经过A/D转换后就得到笔触点的输出值,该输出值与笔触点的位置成近似线性关系。因此ADS7846就可以得到笔触点在触摸屏上的相对位置。
3.3误差产生的原因及消除方法
对坐标值精度产生影响的原因主要有:1,触摸屏本身电阻材料的均匀性,由于材料均匀性的问题,可能导致电压分压的不均匀,必然影响输出的精度。2,触摸在按下和释放过程中的抖动问题。3,ADS7846模拟开关的内阻和A/D转换器自身的转换精度。4,ESD干扰问题。
第一个和第三个问题是器件的固有问题,无法消除。对第二个问题,我们可通过软件进行键削抖。采用两次键值比较是一个较好的方法,具体工作原理是连续测量X 、Y坐标值两次,然后进行比较,若相同或相差在允许的误差范围内就认为是有效键,否则为无效键。
关于ESD问题,这个是设计时主要面对的问题,具体措施主要采取一下几点:
1、ADS7846的模拟地与系统的数字地不是一点相连。数字地干扰由公共阻抗耦合到ADS7846的模拟地,产生干扰造成抖动。解决办法是模拟地与数字地一点连接。
2、ADS7846的逐次比较型A/D转换器对电源及数字写入非常敏感,解决方法是在电源引脚附近放置一个10μF的旁路电容,在参考电压输入端也放置一个0.1μF的旁路电容。
3、在电磁干扰比较强的场合,为了防止触摸屏的引脚产生的高频干扰脉冲对ADS7846产生干扰,应在关键引脚DCLK、DIN、DOUT对地接0.001μF的高频整波电容。在PCB布线的时候屏到芯片的连线也应该以短粗为主。
3.4 ADS7846控制字及数据传送方式
控制字
ADS7846的控制字由表1所列,其中S为数据传输起始标志位,该位必为“1”,A2~A0进行通道选择。MODE用来选择A/D转换的精度,“1”选择8位,“0”选择12位。SER/DFR选择参考电压的输入模式。PD1、PD0选择省电模式:“00”省电模式允许,在两次A/D转换之间掉电,且中断允许;“01”同“00”但不允许中断;“10”保留;“11”禁止省电模式。
表1 ADS7846控制字
Bit7(MSB) | bit6 | bit5 | bit4 | bit3 | bit2 | bit1 | bit0 |
S | A2 | A1 | A0 | MODE | SER/DFR | PD1 | PD0 |
5 程序实现流程以及注意事项
触摸屏和微控制器之间的互动通过外部中断实现。在程序设计中重要功能块包括以下几个部分:
ADS7846的初始化,包括有: 初始化SPI寄存器、可编程定时器中断和笔中断;MCU外部中断的配置;LCD控制器的初始化配置:LCD驱动IC的一些初试化配置,一般由LCD的厂家提供;坐标定位子程序;以及LCD逐点显示子程序。程序设计中,需要注意触摸抖动和连击问题。可以采用延迟测量法来解决,即在接收到触摸屏笔中断时延迟一段时间(抖动时30ms)后再测量,可消除抖动;测量完后再次延迟一段时间(连击延时300ms)后打开笔中断,可避免连击现象出现。
6 结束语
讨论了在电阻式触摸屏开发应用中遇到的几个技术问题以及解决方法,电阻式触摸屏的应用既有硬件接口技术问题,也有软件处理方法的问题。因此,要想使电阻式触摸屏的使用取得良好的效果,确保硬件稳定可靠,增强其抗干扰的能力是前提。而对于硬件上克服不了的问题,可以用软件处理的方法来解决。所讨论的问题解决方案均切实可行,且在实践中取得了良好的应用效果。
参考文献
[1] Touch Screen Controller ADS7846 http://www.ti.com 2004
[2] 倪天龙 邓洪波 金连文
通过ADS7846在PDA上实现个性化书法输入,电子技术应用,2004年9月21日
[3] Paul Kovitz 电阻式触摸屏结构和实现原理,夏普公司,2003年9月31日