基于51单片机的触摸屏控制器制作
学生作品
校 园 电 子 ELECTRONICS WORKSHOP
基于 51 单片机的触摸屏控制器制作
海军航空工程学院 ◆
王诚成 应朝龙 周
亮
现代社会随着信息及电子设备产品市场的迅速
壮大,以及人们对电子产品智能化、人性化要求的不
断提高,触摸屏作为一种便捷的输入接口,得到了广
泛的应用。目前,触摸屏的需求动力主要来自于消费
电子产品,如手机、PDA、便捷游戏机、便携导航设备
等。但随着触摸屏技术的不断发展,它在其他电子产
品中的应用也会得到不断延伸。现在市面上已有的
触摸屏控制器普遍价格比较高且性能相对比较固
定,一些场合下无法满足用户的实际需求。本文基于
上述考虑,根据电阻式触摸屏的工作原理,选用 51
系列单片机作为控制核心,设计制作一种实用且低
成本的触摸屏控制器。
一、电阻式触摸屏的工作原理
目前,在触摸屏领域主要有 8 种不同的技术:
电阻式、表面电容式、投射电容式、表面声波式、红外
线式、折射式、主动数字转换式和光学成像式。其中,
电阻式触摸屏凭借低廉的价格以及对于手指及输入
笔触摸的良好响应性,涵盖了 100 多家触摸屏元件
制造商中的 2/3,成为过去 5 年中销售量最高的触
摸屏产品。在这里根据要设计应用的触摸屏控制器,
重点介绍一下四线电阻式触摸屏。
电阻触摸屏的屏体部分是一块与显示器表面相
匹配的多层复合薄膜,由一层玻璃或有机玻璃作为
基层,表面涂有一层透明的导电层,上面再盖有一层
外表面硬化处理、光滑防刮的塑料层,它的内表面也
涂有一层透明导电层,在两层导电层之间有许多细
小 (小于千分之一英寸)的透明隔离点把它们隔开绝
缘。当手指触摸屏幕时,平常相互绝缘的两层导电层
就在触摸点位置有了一个接触,因其中一面导电层
接通 Y 轴方向的 5V 均匀电压场,使得侦测层的电
压由零变为非零,这种接通状态被控制器侦测到后,
进行 A/D 转换,并将得到的电压值与 5V 相比即可
得到触摸点的 Y 轴坐标,同理得出 X 轴的坐标,这
就是四线电阻式触摸屏基本原理。
二、触摸屏控制器硬件设计
由四线电阻式触摸屏的工作原理可以看出,在
硬件设计上的主要工作就在于将触摸点所在的 X
轴及 Y 轴坐标通过控制驱动模块加以精确识别并
显示出来。
1. 总体结构设计
本文采用 AT89C2051 作为驱动电路的控制核
心,通过 ADS7843 模块接收触摸屏上得到的信号
并控制驱动电路作出相应的反应,通过 RS232 串行
通信发送到计算机上显示出来。其整体结构框图如
图 1 所示。
2. 触摸屏控制系统原理电路设计
本电路以 ADS7843 触摸屏控制芯片为硬件驱
动模块,ADS7843 内部有一个由多个模拟开关组成
的 供 电 测 量 电 路 网 络 和 12 位 的 A/D 转 换 。
ADS7843 根据微控制器发来的不同测量命令导通
32
电子制作 2009 年第 9 期
学生作品
校 园 电 子 ELECTRONICS WORKSHOP
不同的模拟开关,以便向工作面电极对提供电压,并
把相应测量电极上的触点坐标位置所对应的电压模
拟量引入 A/D 转换器。系统以单片机 AT89C2051
为控制器件,它有较少的精简 I/O 端口,体积很
小,非常适用做小型应用系统的处理器。在触摸点
X、Y 坐标的测量过程中,测量电压与测量点的关系
如图 2 所示等效电路,图中 P 为测量点。
参见图 3 的控制驱动电路,主控芯片为单片机
AT89C2051,通过引脚 3.5 与 3.7 来接收与输出指
令来控制 ADS7843 芯片。当触摸屏上有按压动作
时,ADS7843 芯片在单片机 AT89C2051 的作用下
完成了触摸坐标 X+、X- 、Y+、Y- 的信息采集及
A/D 转换,将数据信息返回到单片机,单片机根据得
到的数字信息作出处理后通过 MAX232 芯片与计
算机进行串行通信,将输入信息显示出来。
2009 年第 9 期电子制作
33
学生作品
校 园 电 子 ELECTRONICS WORKSHOP
都为关断状态。
3. 触摸屏内部驱动原理电路
在本文的触摸屏驱动电路设计中,应用了
ADS7843 芯片作为其中的驱动模块,它在控制器的
作用下完成了触摸坐标信息采集及 A/D 转换,并将
处理后的信息送到控制器中,实现了信息交互功能。
它的内部驱动电路原理如图 5 所示。
从图 4 中可以看出控制信号通过简单的电阻
与三级管组合来驱动四线电阻式触摸屏。通过单片
机输出指令控制三极管的通断,形成对该驱动电路
的循环扫描以检测是否有按压动作以及读取 XY 的
坐标。该驱动电路的主要工作时序为:
(1)检测是否有按压动作
① YCTR+=1, YCTR- =0 此 时 三 极 管 V2、V3
都为关断状态。
② XCTR+=0, XCTR- =1 此 时 三 极 管 V1、V4
都为开通状态。
③ AD 转换器读 ADC 的电压值,若大于门限值
则说明有按压动作。
(2)读 X 坐标
① YCTR+=1, YCTR- =0 此 时 三 极 管 V2、V3
都为关断状态。
② XCTR+=0, XCTR- =1 此 时 三 极 管 V1、V4
都为开通状态。
③ AD 转换器读 ADX 的电压值。
(3)读 Y 坐标
① XCTR+=1, XCTR- =0 此 时 三 极 管 V1、V4
图 4 触摸屏内部驱动原理电路
② YCTR+=0, YCTR- =1 此 时 三 极 管 V2、V3
都为开通状态。
③ AD 转换器读 ADY 的电压值。
三、系统软件设计
根据硬件电路设计原理,控制驱动电路软件设
计工作就是根据 ADS7843 芯片内部原理及时序关
系控制其实现对 XY 坐标的采集,同时将信息通过
RS232 串行通信发送到计算机上。程序设计框图如
图 5 所示。
四、结束语
本系统采用 ADS7843 触摸屏驱动芯片,通过
AT89C2051 单片机编程产生驱动信号,并由串行通
信对测量过程进行信息传递。通过进行实际的设计
调试,该设计具有系统测量精度高、体积小、结构简
单、可控性高且软硬件系统成本预算低廉等特点,具
有广阔的应用前景。
34
电子制作 2009 年第 9 期
基于51单片机的触摸屏控制器制作.doc