同样的,本系统所选用的8*15行列式电阻触摸屏也是通过按键来改变其节点的电阻,从而判断按键的具体位置。这种触摸屏是在一层玻璃的表面分别放置了8行15列的带状透明导电层ITO,并在两层导电层之间用若干透明隔点隔开绝缘。它的主要特点是结构简单,操作方便,编程也非常容易。
现以图3中的A点被按下为例,说明这种触摸屏的按键识别原理。首先使所有行线处于高电平状态,同时将所有列线送低电平,那么A点被按下时,其所在的第一行将变为低电平。根据这个变化便能判定此行有键按下,但还不能确定是A点被按下。为了进一步确定按键位置,对列线逐列送低电平,而其余列线处于高电平。当第一列送低电平时,因为此交叉处的透明导电层没有接触,所以第一行仍为高电平;当第-N送低电平时,第一行同样为高电平;当第三列送低电平时,因为此处的透明导电层接触,所以第一行将变为低电平, 因此就可以确定按键的位置。
图3 8x15行列式触摸屏结构图
2.2触摸屏与MCU的接口电路
本系统使用单片机的P0口通过双向总线控制器74HC245读取行扫描信号,因此将触摸屏的8条行扫描信号线连在74HC245的B端。并且将74HC245的DIR端接地,即DIR=0,以保证它的驱动方向始终为B—A,处于读状态。
根据触摸屏的工作原理,需要将行线电平置高,因此将8条行扫描信号线的每一行都通过上拉电阻接N+5V电源端,这样在触摸屏没有按键按下时,可保证所有行扫描信号线全部都为高电平;同时,将15条列扫描信号线全部通过两片地址锁存器74HC373送低电平,使得当有键按下时,对应的行能够变为低电平。但是仅仅这样还不能判定到底是哪一个键被按下。所以在扫描到有键按下后,需要对15条列扫描信号线逐列送低电平, 同时对其余的列扫描信号线送高电平,然后检测行扫描线的变化,若某一行由高电平变为低电平,就可以判定是此处的按键被按下。
电路中有一片74HC245和两片74HC373,需要进行统一的片选,因此采用译码器74LS138来对它们进行控制。74HC245和两片74HC373分别由Y2、y1、yO端控制, 且74LS138的输入由三个I/O 口P1.5、P1.4和P1.3控制。由此可以确定这几块芯片的地址,分别为:10 0000H~17 FFFFH(Y2)、08 0000H~OF FFFFH(Y1)、00 0000H~07 FFFFH(Y0)。
锁存器的锁存端LE均由单片机的ALE端控制,当单片机向列扫描信号线送数据时,将LE置1,当需要锁存地址时,将LE由1变为0。
触摸式人机界面系统输入端接口电路如图4所示。
图4 触摸屏与MCU接口电路图