老古开发网首页
导航:老古开发网首页文章索引索引第121页文章分类经验总结第1页→[51单片机系统中的触摸屏坐标算法]
| -文章搜索 - 最新文章 - |

51单片机系统中的触摸屏坐标算法

发布时间:2003年3月5日 点击次数:1175
来源:   作者:中国海洋大学 程凯;青岛市第三人民医院 杨晓
 

  人机对话的界面种类有很多,比如显示器、LED、LCD及带触摸屏的LCD等。其中后者是最近几年刚发展起来的一项新技术,它通过计算机技术处理声音、图像、视频、文字、动画等信息,并在这些信息间建立一定的逻辑关系,使之成为能交互地进行信息存取和输出的集成系统。换而言之,它能综合信息发布者的意愿和接受者对信息的需求及接受习惯,对信息进行收集、加工、整合并双向式传播。触摸屏系统符合简便、经济、高效的原则,具有人机交互性好、 操作简单灵活、输入速度快等特点。它与迅猛发展的计算机网络和多媒体技术相结合,使用者仅仅用手指触摸屏幕,就能进行信息检索、数据分析,甚至可以做出身临其境、栩栩如生的效果;较键盘输入简单、直观、快捷,具有丰富多采的表现能力,比以往任何传媒更具亲合力。

  触摸屏和51单片机接口,可以使一些小系统的操作更加方便、快捷。使用触摸屏时最重要的问题是确定坐标位置,即确定触点位置是否在该键的有效区域之内。由于51系列单片机的汇编语言不具备其它高级语言所具有的丰富库函数及逻辑运算能力,所以如何用51单片机简捷准确地完成这一任务,便成为应用中迫切需要解决的问题。

  在实际应用中,我们采用了ADS7843作为触摸屏的控制器。关于ADS7843的原理及工作方式,已经有很多文章发表,而如何确认坐标位置却很少提及。本文仅就坐标确定问题做如下分析。

1  转换模式

  ADS7843的转换精度有8位和12位两种,可以精确到X或Y方向上的1/256和1/4096。我们采用清华蓬远公司的PDA240160触摸显示屏,外形尺寸是61.6mm×42.4mm,所以没必要采用12位A/D转换,而只需要8位A/D转换就足以达到所需精度,即最小分度是X、Y长度方向的1/256。

2  坐标确定

  PDA240160触摸显示屏的坐标如图1。


图1  触摸显示屏的坐标图

  其中,(X,Y)是一个图表按键的中心坐标,(X’,Y’)是右下角坐标,(X”,Y”)是其左上角的坐标。在触及屏幕时,触点只要在(X’,Y’)和(X”,Y”)矩形区域内均认为是触摸该键有效。假设一个32×32点阵的图标按键中心坐标(X,Y)为(50,50),那么(X’,Y’)就是(35,40),(X”,Y”)就是(65,60)。在触摸时只要得到的键坐标在(X’,Y’)和(X”,Y”)之间,即认为是触摸到了该键。而在该键坐标范围内的值又是如此之多,如何来处理得到的坐标呢?最初我们采取散转方式,结果是程序太冗长、可读性差且可移植性不好,不能作为子程序来调用。经过探讨分析,我们最后采取了查表的方式。

  首先,制作如下所示的坐标表(包含当前屏幕上的所有键的两个角坐标):

 

  表中每一行均代表一个键值的两个角坐标(需要放置完图标按键后调用相关程序确定两个角的坐标值),最后的字符001~n是每个键值的标志(简写A)。这个标志很有用,在以后的程序中会看到。

3  程序流程图与程序清单

  程序流程图如图2 。


图2  程序流程图

  子程序清单见本刊网络补充版(www.dpj.com.cn)。其中XA、YA存储的是A/D转换后的坐标值。程序已经调试通过,敬请读者验证。

结语

  经过反复测试后得出:每个触摸键的反应都很灵敏,而且在每个图标键的有效区域内都能反应。证明这个思路简捷、易懂、可移植性好,在确定触摸按键位置坐标时是非常具有实际应用价值的。

参考文献

1  Burr-Brown公司. ADS7843 Data Book. 1998
2  何立民. 单片机应用技术选编(5). 北京:北京航空航天大学出版社,1997
3  万福君, 潘松峰,等. 单片微机原理系统设计与应用. 合肥: 中国科学技术大学出版社, 2001
4  胡冰,吴升艳,等. ADS7843触摸屏接口. 国外电子元器件. 2002(7):27~29


欢迎进入老古论坛进行讨论
[经验总结] 相关文章:
用C8051F构成的采集与控制系统
简介:
  在实际应用中,对被控对象的物理参数(温度、湿度、位移、电流及电压等)在一定的范围内进行控制,是单片机的典型应用之一。很多宏观要求精确控制的场合,其微观控制过程,仍可归结为是对某些参数变化范围的控制。如传统的三相异步电机从启动到正常运行,电流、电压和温度的变化;抽水塔水位的变化;机床刀具的行程变化及数字电表的自动量程变换等。这些控制过程最显著的特点是:被控物理量都是一个变化范围,而非某一个精确的“点”。对物理量变化范围进行有效控制的方法很多,本文重点介绍利用C8051F000单片机片内8路高......

PIC单片机软件异步串行口实现技巧
单片机系统的电磁兼容性设计
51系列单片机双CPU系统通信方法
μC/OS-Ⅱ在C167CR单片机上的移植
 
下一个:51单片机系统中的触摸屏坐标算法

上一个:[嵌入式系统]3-DES算法的FPGA高速实现

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:30分钟 执行时间:31毫秒