系统组成
触摸屏输入系统由触摸屏、触摸屏控制器和微控制器三部分组成。图1示出了一个实际的触摸屏输入系统,系统中触摸屏采用四线电阻式触摸屏,触摸屏控制器采用TI(BB)公司的ADS7846。
触摸屏
触摸屏附着在显示器的表面,与显示器相配合使用,如果能测量出触摸点在屏幕上的坐标位置,则可根据显示屏上对应坐标点的显示内容或图符获知触摸者的意图。触摸屏按其技术原理可分为五类:矢量压力传感式、电阻式、电容式、红外线式、表面声波式,其中电阻式触摸屏在嵌入式系统中用的较多。电阻触摸屏是一块4层的透明的复合薄膜屏(图2),最下面是玻璃或有机玻璃构成的基层,最上面是一层外表面经过硬化处理从而光滑防刮的塑料层,中间是两层金属导电层,分别在基层之上和塑料层内表面,在两导电层之间有许多细小的透明隔离点把它们隔开。当手指触摸屏幕时,两导电层在触摸点处接触。
触摸屏的两个金属导电层是触摸屏的两个工作面,在每个工作面的两端各涂有一条银胶,称为该工作面的一对电极,若在一个工作面的电极对上施加电压,则在该工作面上就会形成均匀连续的平行电压分布。如图1所示,当在X方向的电极对上施加一确定的电压,而Y方向电极对上不加电压时,在X平行电压场中,触点处的电压值可以在Y+(或Y-)电极上反映出来,通过测量Y+电极对地的电压大小,便可得知触点的X坐标值。同理,当在Y电极对上加电压,而X电极对上不加电压时,通过测量X+电极的电压,便可得知触点的Y坐标。电阻式触摸屏有四线和五线两种。四线式触摸屏的X工作面和Y工作面分别加在两个导电层上,共有四根引出线,分别连到触摸屏的X电极对和Y电极对上。五线式触摸屏把X工作面和Y工作面都加在玻璃基层的导电涂层上,但工作时,仍是分时加电压的,即让两个方向的电压场分时工作在同一工作面上,而外导电层则仅仅用来充当导体和电压测量电极。因此,五线式触摸屏的引出线需要5根。
图1 触摸屏输入系统的组成
图2 触摸屏的触摸示意图
图3 ADS7846的功能框图
图4 测量关系
图5 转换时序
图6笔中断请求
图7 软件接口流程图
ADS7846触摸屏控制器
各种类型的触摸屏均有其相应的控制器,如:ADS7846是四线式触摸屏的控制器,而ADS7845是五线式触摸屏的控制器。控制器的主要功能是分时向X、Y电极对施加电压,并把测量电极上的电压信号转换为相应触摸点的X、Y坐标。
ADS7846内部有一个由多个模拟开关组成的供电-测量电路网络和12位的A/D转换器(见图3)。ADS7846根据微控制器发来的不同测量命令导通不同的模拟开关,以便向工作面电极对提供电压,并把相应测量电极上的触点坐标位置所对应的电压模拟量引入A/D转换器。在触摸点X、Y坐标的测量过程中,测量电压与测量点的等效电路如图4所示,图中P为测量点。
ADS7846与微控制器MMC2107之间通过标准的SPI口相连,由MMC2107启动3次SPI传送来完成转换,如图5所示。第一次SPI传送由MMC2107向ADS846发控制字,包括起始位、通道选择、8/12位模式、差分/单端选择和掉电模式选择,接下来的两次SPI传送则是MMC2107从ADS7846取A/D转换结果数据(最后四位自动补零),完成触摸屏控制器和微控制器之间的一次通信。
笔中断输出
ADS7846通过笔中断请求向MMC2107表示有触摸发生。如图6所示,当没有触摸时,MOSFET①和②打开、③关闭,则笔中断输出引脚通过外加的上拉电阻输出为高。当有触摸时,①和③打开、②关闭,则笔中断输出引脚通过③内部连接到地而输出为低,从而向MMC2107发中断请求。
实际应用举例
触摸屏输入系统的硬件连线如图1所示,当有触摸时ADS7846向MMC2107发中断请求,由MMC2107响应该中断请求,启动图5所示的通信过程,读取ADS7846的转换结果,从而得到触摸点的坐标,其软件流程如图7所示,包括系统初始化(图中省略)、中断服务程序和ADS7846测量程序三部分。在ADS7846测量程序中,完成一次MMC2107和ADS7846之间的通信过程。
在测量过程中发现ADS7846的外时钟为50KHz~60KHz时是比较适宜的。ADS7846只能作为SPI的从设备,各信号的时序是完全固定的,因此需要配置MMC2107 SPI接口信号的时序使之完全符合ADS7846的时序,尤其是从选择信号SS#在一次通信过程中应一直为低(见图5)。
实际测量结果如表1、表2所示: 表1是在一条基本竖直的直线上等距离测量的几个点的坐标值,从表中可得X坐标的斜率为64.25/mm,表2是一条基本水平的直线上等距离测量的几个点的坐标值,可知Y坐标变化斜率为46.33/mm。
|