基于C8051F021和ADS7846的触摸屏系统设计

2011-06-02 10:57:56来源: 互联网 关键字:触摸  触摸屏  系统  系统设计
0 引言
    随着现代电子产品设计技术的不断发展,电子产品的设计,尤其是人机交互界面的设计越来越趋向于人性化。触摸屏凭借其独特的操作特性,应用日益广泛,它配合微控制器使用,能使嵌入式设备或手持式设备具有更加良好的人机交互界面,操作更加方便快捷。本文给出了一个基于C8051F021单片机和ADS7846触摸屏控制器的触摸屏控制系统的设计方法。


1 触摸屏工作原理
    触摸屏有电阻式、电容式、红外线式、表面声波式等多种。其中电阻式触摸屏是目前应用较为广泛的一种,可分为四线、五线、七线等几类。其中四线制电阻式触摸屏采用的是四线电阻模拟量技术,即两个阻性层工作时,每层均加有5 V恒定电压,一个竖直方向,一个水平方向,含四根导线;其特点主要是传输反应快,解析度高,稳定性好,一次校正,不易漂移,比较适合于工业控制领域,但使用时要注意防止外导电层被划伤。
    电阻式触摸屏实际上是一种传感器,它采用分压器原理将矩形区域中的触摸点(X,Y)的物理位置转换为代表X坐标和Y坐标的电压,图1所示是其原理图。四线制触摸屏一般包含两个阻性层:其中一层在屏幕的左右边缘各有一条垂直总线,而另一层在屏幕的底部和顶部各有一条水平总线。为了在X轴方向进行测量,可将左侧总线偏置为0 V,右侧总线偏置为VREF,并将顶部或底部总线连接到ADC,这样,当两个阻性层相接触时(即有触摸时)即可作一次测量;为了在Y轴方向进行测量,可将底部总线偏置为0 V,顶部总线偏置为VREF,并将左侧或右侧总线连接到ADC,这样,当两个阻性层相接触时,即可对电压进行测量;该屏最理想的连接方法是将偏置为VREF职的总线接在ADC的正参考输入端,而将偏置为OV的总线接在ADC的负参考输入端。

2 系统的硬件设计与实现
2.1 C8051F021的主要功能特点
    本系统选用性能优良且成本较低的SOC单片机C8051F021作为控制核心。它是完全集成的混合信号系统级MCU芯片,具有32个数字I/O引脚。其主要的内部资源有8通道12位ADC,2通道12位DAC,4 KB的RAM,64 KB的FLASH,以及硬件实现的SPI、SMBus/I2C和两个UART串行接口,同时带有时钟振荡器,看门狗定时器,VDD监视器,温度传感器等。其所有模拟和数字外设均可由IDE软件使能/禁止和配置。同时,它还采用了与8051兼容的CIP-51微控制器内核,因采用流水线结构,其指令执行速度有了很大的提高。此外,C8051F021还配置了标准的JTAG接口,在IDE软件的支持下,可对安装在最终产品上的MCU进行非侵入式、全速、在系统调试。该器件的封装为TQFP-64,可在工业温度范围内(-45℃~+85℃)使用2.7~3.6 V的电压工作。

2.2 ADS7846的主要功能和特点
    ADS7846是BB公司生产的一种四线制触摸屏控制器。可广泛应用在电阻式触摸屏系统中。ADS7846的核心是一个具有采样和保持功能的12位逐次逼近式A/D转换器,其转换速率可达125kHz.且分辨率可编程为8位或12位。该器件不仅具有X、Y坐标测量功能,还具有电池电压、芯片温度、触摸压力和外模拟量4种测量功能,其工作方式可由控制字决定,片内的6选1模拟多路开关可根据微控制器送来的命令字来选择6个电压量之一(X+、Y+、Y-、VBAT、TEMP、AUX-IN),并将其送入A/D转换器转换,然后再通过SPI接口将转换值送入微控制器。此外,ADS7846还集成有触摸识别电路,当检测到有触摸时,该电路会在PENIRQ(笔中断)引脚输出一个低电平信号,并以该信号向微控制器提出测量触点坐标的中断请求。该芯片采用单电源供电,工作电压为2.2~5.25 V,且内部自带+2.5 V的参考电压。
2.3 C8051F021和ADS7846的硬件接口
    基于C8051F021单片机和ADS7846触摸屏控制器的触摸屏控制系统的硬件接口电路如图2所示。

    图2中。TX+、TX-、TY+、TY-为位置输入端,分别对应四线制电阻式触摸屏的四线制接口:
    BUSY为忙信号指示,可在数据转换时持续一个时钟周期的高电平状态,当TCS为高时,BUSY为高阻状态:
    TCS为片选输入,只有当TCS为低时,串行数据才可以从DIN读入;
    DIN为串行数据输入,在DCLK的上升沿读入数据;
    DOUT为串行数据输出,用于输出转换后的触摸点位置数据,12位工作方式下,其最大为4095,可在DCLK的下降沿输出数据,当TCS为高时,DOUT为高阻状态;
    DCLK为外部时钟输人引脚,其输入时钟信号的频率决定了电路的转换速度,其推荐占空比为40%~60%;
    PENIRQ为笔中断引脚。工作时应通过10~100 kΩ电阻器上拉,当有触摸事件发生时,可向微控制器申请中断服务;
    VREF为A/D参考电压输入;
    TCS、DCLK、 DIN、 BUSY、DOUT、PENIRQ分别接C8051F021的P1.0、P1.1、P1.2、P1.3、P1.4、PO.3。另外,IN3、IN4为两个附属A/D输入通道,本系统没有用到,使用时可将其接地。


3 系统软件的设计与实现
    ADS7846可通过片内模拟多路开关的切换,将X+/Y+端接VCC,将X-/Y-端接地,并将X+/Y+和X-/Y-以差分形式接到A/D转换器的输入端。这样,当点击触摸屏的不同位置时,输入到A/D转换器中的电压就不相同,然后再经A/D转换后,就可得到触点的输出值,该输出值与触点的位置成近似线性关系。ADS7846通过一般控制字来设置工作方式,其控制字如表1所列。

    在表1中,S为数据传输起始标志位,该位必为“1”;A2~A0用于通道选择;MODE用来选择A/D转换精度: “1”选择8位, “0”选择12位;SER/DFR选择参考电压的输入模式;PD1、PD0选择省电模式: “00”为省电模式,可在两次A/D转换之间掉电,且允许中断,而“01”同“00”相似,但不允许中断; “10”为保留; “11”为禁止省电模式。
    ADS7846与C8051F021之间通过标准的SPI接口相连。并由C8051F021启动3次SPI传送来完成转换。第1次SPI传送由C8051F021向ADS7846发送控制字,含起始位、通道选择、8/12位模式选择、差分/单端选择和掉电模式选择;后两次SPI传送则是C8051F021读取A/D转换后的结果数据,至此便完成了ADS7846和C8051F021之间的一次通信。其数据传送时序如图3所示。

本系统中的触摸屏应用流程图如图4所示。

    在编程过程中,通常应该注意以下问题:
    (1) C8051F021的初始化,一般还会包括显示模块的初始化等;
    (2)DS7846的初始化,一般包括寄存器和笔中断的初始化等;
    (3)防止抖动和连击,通常需要加入消抖子程序和延时子程序;
    (4)减小测量误差,往往应采用多次测量并加入软件滤波子程序;
    (5)触摸屏与液晶屏的坐标系不一致,还必须加入坐标变换子程序。


4 结束语
    本文给出了一个基于C8051F021单片机和ADS7846触摸屏控制器的触摸屏控制系统的设计方法。讨论了在触摸屏控制系统开发过程中的若干软、硬件问题。在工程实际中,本系统经过多次测试,效果良好。

关键字:触摸  触摸屏  系统  系统设计

编辑:eeleader 引用地址:http://www.eeworld.com.cn/gykz/2011/0602/article_6275.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:基于心电反馈的注意力缺陷 多动障碍矫正仪设计
下一篇:基于STC89C52的程控恒流源的设计

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利
推荐阅读
全部
触摸
触摸屏
系统
系统设计

小广播

独家专题更多

2017东芝PCIM在线展会
2017东芝PCIM在线展会
TI车载信息娱乐系统的音视频解决方案
TI车载信息娱乐系统的音视频解决方案
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源
迎接创新的黄金时代 无创想,不奇迹
迎接创新的黄金时代 无创想,不奇迹
​TE工程师帮助将不可能变成可能,通过技术突破,使世界更加清洁、安全和美好。
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved