ARM Linux入门与实践
作者:阿南
2.4.10 触摸屏
1.触摸屏及原理
触摸屏,我想大家都早熟知,如手机、PDA,以及电脑等都有用它来替代以前的键盘和鼠标,成为一种新的输入设备。触摸屏和LCD组合是目前操作方便、简单的一种人机交互方式。触摸屏的基本原理、结构等在很多书籍和网上都有介绍,但初次使用、调试触摸屏电路的朋友还是会有一些疑问。当使用不带触摸屏接口的MCU时首先会选择触摸屏接口专用芯片(如ADS7843等),调试过程中也会疑问数据出错,或结果值有较大误差。2410开发板上触摸屏电路中的四个场效应管很难买怎么办?用什么来替代等等。我想这些疑问主要还是没有理解触摸屏及控制电路的工作原理产生的。作为应用工程师,无论我们使用的是电阻式触摸屏还是电容式,或其它,都可以将它理解成由两个具有一定阻值的导体,导体中间是隔离层,当触摸屏没有被按下时,两张导体没有接触,当某点被按下时,导体将在被按下的点处接触,此时可以等效成如图2.37所示的四个电阻结构。那么计算被按下的点的坐标位置(假设为X1,Y1),就可以简单的转换成计算点在X和Y轴的电阻值或电压值。以四线触摸屏为例,X+、X-、Y+、Y-分别是触摸屏的四条引出线。当要计算X1的电压值时,先将Y+和Y-悬空,再将X+接3.3V,X-接地,此时X1点将由3.3V经R1、R2分压得到一个固定的电压值,该值也等于Y+或Y-端的值(因为悬空,所以Y轴的每个点都等于接触点X1的电压值),所以通过AD采集Y+或Y-即可得到X1值。同理将X+和X-悬空,Y+、Y-接3.3V和地,也可测量得到Y1
值。
图2.37 触摸屏电阻等效电路
2.触摸屏控制电路
如果2.38所示为触摸屏的控制电路,四个晶体管(三极管)就是按照上节的电阻结构原理控制X+、X-、Y+、Y-端的悬空,或3.3V电源和接地,图中四个控制信号分别为nXPON、nYPON、YMON、XMON。X+、Y+端经RC滤波后与A/D转换器的输入相连接,为AIN5、AIN7。IRQ_TP作为触摸屏按下时的中断输入或状态查寻(注:该管脚的内部上拉要使能),正常情况下
X-,X+悬空,Y-接地,此时X-和IRQ_TP为高电平,当触摸屏被按下时,X-将被Y-拉低,IRQ_TP也将被拉低产生中断信号。图2.38适合任何的处理器(需要有两路A/D转换器,位数越高,触摸屏的精确度越高),由于S3C2410A集成触摸屏控制器,所以能自动完成四个晶体管的时序控制和A/D的采集及中断。其它不具有触摸屏控制器的MCU,需程序实现控制和A/D的采集工作。
图2.38 触摸板接口