• 单片机触摸屏485 > 51单片机系统中的触摸屏坐标算法3
  • 51单片机系统中的触摸屏坐标算法3

    免费下载 下载该文档 文档格式:DOC   更新时间:2007-09-02   下载次数:0   点击次数:1
    文档基本属性
    文档语言:Simplified Chinese
    文档格式:doc
    文档作者:Image
    关键词:
    主题:
    备注:
    点击这里显示更多文档属性
    51单片机系统中的触摸屏坐标算法
    引言
    人机对话的界面种类有很多,比如显示器,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转换后的坐标值.程序已经调试通过,敬请读者验证.
    程序清单:
    《51单片机系统中的触摸屏坐标算法》
    子程序如下:
    . MOV KEY_QUAN,KQ ;KQ:指定键盘的数目,比实际的数目大1
    MOV DRTR,#TAB
    JGE: MOV COUNT3,KEY_QUAN
    J1: DJNZ COUNT3,J11 ;判断是否到表尾
    LJMP PREPARE ;退出
    J11: MOV A,#0 ;取出X'
    MOVC A,@A+DPTR
    CJNE A,XA,J2 ;X'是否小于XA
    J2: JC J3
    INC DPTR ;若X'不小于XA,则DPTR+5,取出下一个键值的X'
    INC DPTR
    INC DPTR
    INC DPTR
    INC DPTR
    CLR A
    LJMP J1
    J3: INC DPTR ;若X'小于XA,则DPTR+2,取出X"
    INC DPTR
    CLR A
    MOVC A,@A+DPTR
    CJNE A, XA, J4 ;X"是否大于XA

    下一页

  • 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
  • 免费下载 DOC格式下载
  • 您可能感兴趣的
  • 触摸屏与单片机通讯  单片机与触摸屏的通信  单片机如何控制触摸屏  单片机控制触摸屏  单片机485多机通讯  单片机485  单片机485编程  485接单片机  485能接单片机吗