基于MCU触摸屏控制系统设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于MCU触摸屏控制系统设计

基于MCU触摸屏控制系统设计   摘#8195;要介绍以带有A/D模块的单片机为核心的触摸屏控制系统的设计,分析在系统设计过程中各种干扰信号出现的原因以及它们对系统控制效果的影响,并针对不同的干扰给出相应的解决方法。   关键词MCU;触摸屏;ADS7843   中图分类号TP文献标识码A文章编号1673-9671-(2010)092-0023-01      目前很多人机交互界面采用的是无按键式的触摸式控制系统,在此系统中较多应用的是四线式触摸屏控制器,在应用中有很多经典电路和经验总结,但在实际使用调试过程中仍然会遇到一些意想不到的问题。本文针对于本触摸屏控制系统设计中所遇到的问题进行分析处理,并给出了解决方法。   1触摸屏的系统设计   1.1系统构成   基于典型的四线电阻式触摸屏具有精确度高,不受环境干扰,适用于各种场合的特点。本系统采用通用的控制芯片ADS7843为控制器实现的四线电阻式触摸屏,该芯片具有12位转换精度,支持SPI通讯协议;提供繁体或简体中文,支持2Page显示模式,支持文本和图形显示(320×240点)两种方式,显示模块带有512KByte的16x16中文显示字型ROM(FontROM)与8x16的ASCII字型,除内建8x16/16x16的字号外,还提供字型放大的功能。   MCU采用完全集成的混合信号系统级MCU芯片C8051,具有高速、流水线结构的C8051兼容的CIP-51内核可达25MIPS,具有12位的AD转换精度,硬件实现的SPI、SMBus/I2C接口,5个通用的16位定时器。70%的指令执行时间为一个或两个系统周期。   1.2硬件电路及触摸屏扫描方式   如图1示。ADS7843串行接口的一次完整操作需要3x8=24个DCLK时钟周期,前8个脉冲接收8位的命令,并在第6个脉冲的上升沿开始A/D转换器进入采样阶段,从第9个脉冲开始进入转换阶段,输出12位采样值,转换结束进入空闲阶段。直到24个DCLK结束,CS置高电平,一次测量结束。此外,ADS7843还支持其它的工作方式,这里不在详述。   图1带有A/D的C8051与ADS7843和触摸屏的连接图   1.3工作原理   当用户在触摸屏上的有效区域内点击时,触摸屏的X方向、Y方向输出电阻分别随X和Y呈线性变化,C8051接收ADS7843控制器转换后的12位数据并进行处理;首先进行触点数据是否有效判断,包括两方面:一是判断是否是误操作,即是否是由于触摸时的抖动产生的错误数据;二是ADS7843产生的数据是否有效,由于刚开始得到的第一个坐标是用户开始接触触摸屏时产生的,此时电阻不是很准确,导致数据也不准,一般第一个数据通常要去掉;在接收过程中通常是采用平均值滤波法,假如有一次接收的数据和平均值差别很大,则这次测量就作废,需要重新测量。   测量中一旦数据有效,C8051即解算触点坐标落在液晶屏的位置,根据解算结果进行判断并执行相应的功能函数。通过函数的使用使触摸模与液晶屏有机的结合并建立一定的逻辑关系,交互地进行信息存取和输出。   1.4触摸屏坐标读取的软件流程   图2给出了触摸屏坐标读取的软件程序流程。   2设计中出现的问题及解决方法   2.1触摸控制器的的测量值偏差   当电阻模上有触摸动作时,触摸点的一定区域内会有抖动或错误触发,解决方法:采用软件滤波,先延时以消除抖动,在采集的数据时,采用去极值平均滤波法,采集的偶数个值2N,将采样值的2N-2个数据进行算术平均,去掉采样的最大值和最小值,去除采样中的抖动造成偏差和错误触发。   根据本系统性能数据采集12次,利用中间10个有效连续采样值,求出每次相临两次采样值之差,求和后取平均值与预设值相比较,如果大于预设值,则此触摸动作无效,小于预设值则把采集数据的最小6个差值对应的数据求平均值作为坐标值。即可以消除抖动和错误触发的无效值,得到的坐标采样值精确度较高。   2.2信号干扰   测试时手指或触摸笔触摸时,会产生一些的无效信号,分为两种:①系统采用中断管脚进行触摸信号的告知,所以,当有触摸时,该管脚会一直向C8051发出中断请求。解决方法:中断信号接缓冲器,然后将输出管脚接1μF的电解电容,滤除中断干扰信号。②ADS7843输出值不稳定。解决方法:在X+、Y+管脚上连接15P电容滤波。经过测试验证,问题解决良好。连接电路见图1。   图2触摸屏程序流程图   2.3控制指令发送时间设定   在C8051与ADS7843进行通信进行数据采集时,为了保证能够准确稳定的采集到坐标值,信号采集时钟持续时间必须足够。测试中发现,在高低电平切换后延迟小于16个“_nop_();”时,触摸X坐标线,可以采集到X值坐标,且有

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档