论文FINAL11.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文档。上传文档
查看更多
论文FINAL11

ucGUI中触摸屏操作在S3C2410上的实现 赵瑞芳 唐炎 吴倚龙 摘 要:本文就UCGUI,,同时就在移植过程中,最后给出一个测试范例。 uCGUI;uC/OS-II; The realization of Touch Screen’s operation in ucGUI on S3C2410 1 前言 一般来说,一个嵌入式系统就是一个具有特定功能或用途的计算机软硬件集合体,嵌入式系统最大的特点就是其目的性与针对性,即每一个嵌入式系统的开发都有其特定的功能,这些功能的实现不仅与嵌入式处理器及软件系统密切相关,硬件系统中合理精简的外设也是必不可少的。一般的嵌入式系统配置有存储器,I/O设备,通信模块等必要外设;目前,随着嵌入式系统在人们生活中的广泛使用,对嵌入式系统得要求越来越人性化的需求,嵌入式系统图形界面的要求与触摸屏技术得到飞速的发展与应用。触摸屏是目前最简单、方便、自然的而且又适用于中国多媒体信息查询国情的输入设备,它具有坚固耐用、反应速度快、节省空间、易于交流等许多优点。触摸屏技术被认为是未来人机交互科技的主流方向之一,相关的产业及其产品的应用也正在成为一个热点。 本文探讨了触摸屏技术与ucGUI在S3C2410上的整合实现,使用的软件平台是由ucos和ucgui组成的,其中使用的uCGUI版本为3.90试用版,uC/OS-II为2.52版本。应该后面论述的重点由以下几个部分组成,第一部分介绍,第二部分触摸屏是一套透明的绝对寻址系统,基于电阻技术的触摸屏由于价格低廉,亦可满足绝大多数S3C2410内置1个8信道的10bit模数转换器(ADC),该ADC能以500KSPS的采样资料将外部的模拟信号转换为10bit分辩率的数字量。同时ADC部分能与CPU的触摸屏控制器协同工作,完成对触摸屏绝对地址的测量。ADCTSC的bit8置1或清零来实现,对于每一种中断状态,其x轴和y轴相应的值都应该返回。 3 在ucGUI中整合触摸屏 ucGUI本身支持键盘,鼠标,触摸屏等外设,并在源码级对其消息进行了响应,为使得触摸屏正常工作,用户除实现触摸屏底层驱动以外,还必须对其相应配置文件的修改和添加一些相关函数。 GUIConf.h文件中将宏GUI_SUPPORT_TOUCH定义为1。 GUITouchConf.h文件包括触摸屏矫正时使用的一些宏定义,我们需要根据目标板的具体配置设置具体的值,笔者使用的是广州友善之臂的SBC-2410套餐,其中触摸板和液晶屏都是8.4’’,修改后相应的值如下: #define GUI_TOUCH_AD_LEFT 60 #define GUI_TOUCH_AD_RIGHT 970 #define GUI_TOUCH_AD_TOP 50 #define GUI_TOUCH_AD_BOTTOM 980 #define GUI_TOUCH_SWAP_XY 1 #define GUI_TOUCH_MIRROR_X 1 #define GUI_TOUCH_MIRROR_Y 1 理论上来说,GUI_TOUCH_AD_RIGHT 与GUI_TOUCH_AD_LEFT的取值或者为0,或者为1024(这是S3C2410内置的AD决定的),两者只取其一,GUI_TOUC_AD_BOTTOM与GUI_TOUCH_AD_TOP的取值同样遵守上述规定,但是在实际操作中往往不会如此设置,均会根据具体情况灵活处理,进行校准操作,诸如windowsCE等其它嵌入式系统中使用触摸屏时同样也需要进行触摸屏校准操作,触摸屏的校正是在触摸屏底层驱动的基础上实现的,通过点击触摸板上边界点位置,经由串口打印的坐标值判断上述宏的取值。我们只取左上角和右下角两点坐标作为校正标准,经过多次试验左上角坐标大约为(50,60), 右下角位置相应的值为(970,980), 故而确定相应宏的取值。余下几个宏均属于开关量,取值视相应情况而定。 在uCGUI框架基础上再增加一个文件,GUI_X_Touch.c,该文件中增加四个函数: void GUI_TOUCH_X_ActivateX(void){} void GUI_TOUCH_X_ActivateY(void) {} int GUI_TOUCH_X_MeasureX(void) {} int GUI_TOUCH_X_MeasureY(void){} 其中前面两个函数可以不予理会,只需在后面两个函数中返回测量值即可。这里测量值来源于触摸屏驱动返回的x, y值。 4 ucGUI中触摸屏消息驱动机制 ucGUI是一种嵌入式应用中的图形支持系统.它设计用于为任何使用LCD图形显示的应用提供高效的独立于处理器及LCD控制器的图形用户接口,它适用

文档评论(0)

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

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

1亿VIP精品文档

相关文档