您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 嵌入式课程设计之触摸屏程序设计
摘要随着多媒体信息的与日俱增,传统的人机交互的速度已经不能满足需求,传统的人机交流是通过键盘或鼠标来实现的。信息交换的速度比较慢,而且要求操作者具有一定的专业知识。这将使信息交流的目的大打折扣。触摸屏因方便灵活、节省空间、直观等特点,作为嵌入式系统的输入设备,已取代键盘,越来越受到各种终端产品商的重视。基于Linux的嵌入式系统目前获得到了广泛应用,在嵌入式Linux核心层的开发中,设备驱动分为字符设备、块设备和网络接口设备,触摸屏驱动属于字符设备,但它也可以被纳入input输入子系统的框架下。通过毕业设计的驱动程序开发,也希望能对国家在这方面的发展做出自己的一点贡献。本论文介绍了触摸屏的分类和原理,接着概要介绍嵌入式系统的相关原理理论,然后详细介绍了整个系统的开发环境,最后对整个触摸屏驱动系统进行了分析,讨论了系统具体实现。关键词:Linux操作系统;触摸屏;程序开发;交叉编译-1-目录第一部分绪论...........................................................................................................................-2-1.1设计目的.................................................................................................................................11.2设计意义............................................................................................................................-2-1.3设计内容............................................................................................................................-2-1.4主要任务............................................................................................................................-2-第二部分正文...........................................................................................................................-3-2.1触摸屏工作原理(触摸屏接口工作模式).....................................................................-3-2.2、设计总体方案..................................................................................................................-4-2.3、设计所需工具..................................................................................................................-7-2.4、平台构建过程..................................................................................................................-7-2.4.1、硬件平台搭建..........................................................................................................-7-2.4.2根文件系统的制作.....................................................................................................-9-(1)根文件系统................................................................................................................-9-第三章程序.............................................................................................................................-14-3.1.程序流程图:...................................................................................................................-14-3.2.分析驱动...........................................................................................................................-14-3.2.1、触摸屏设备驱动中数据结构................................................................................-14-3.2.2、触摸屏驱动模块加载和卸载函数........................................................................-16-3.2.3、触摸屏设备驱动的读函数....................................................................................-18-3.2.4、触摸屏设备驱动的轮询与异步通知....................................................................-18-3.2.5、实验结果显示:....................................................................................................-20-第四部分心得.........................................................................................................................-20-4.1课程设计心得体会:......................................................................................................-20-第五部分参考文献.................................................................................................................-21-5.1【参考文献】....................................................................................................................-21--2-第一部分绪论1.1设计目的1.基于Linux操作系统,以及EmestIII实验箱,利用触摸屏返回触点坐标值及动作信息。2.坐标及动作的具体显示:触摸笔动作,触点X坐标值,触点Y坐标值。1.2设计意义1.熟悉嵌入式系统开发平台2.掌握ARM嵌入式Linux操作系统下的各个指令的使用方法3.了解触摸屏的原理1.3设计内容1.Linux系统的正确移植和使用2.根文件系统的正确移植和使用3.驱动程序的编译与装载4.嵌入式系统下应用程序的交叉编译及下载与调试1.4主要任务1.熟悉实验的流程2.vivi,linux内核的烧写3.cramfs文件系统(烧写前需编译)的烧写4.调用驱动程序的某些函数,编译与调试应用程序-3-第二部分正文2.1触摸屏工作原理(触摸屏接口工作模式)(1)普通转换模式普通转换模式(AUTO_PST=0,XY_PST=0)是用作一般目的下的ADC转换。这个模式可以通过设置ADCCON和ADCTSC来进行对AD转换的初始化;而后读取ADCDAT0(ADC数据寄存器0)的XPDATA域(普通ADC转换)的值来完成转换。(2)分离的X/Y轴坐标转换模式:X轴坐标转换和Y轴坐标转换。X轴坐标转换(AUTO_PST=0且XY_PST=1)将X轴坐标转换数值写入到ADCDAT0寄存器的XPDATA域。转换后,触摸屏接口将产生中断源(INT_ADC)到中断控制器。Y轴坐标转换(AUTO_PST=0且XY_PST=2)将X轴坐标转换数值写入到ADCDAT1寄存器的YPDATA域。转换后,触摸屏接口将产生中断源(INT_ADC)到中断控制器。(3)自动(连续)X/Y轴坐标转换模式。自动(连续)X/Y轴坐标转换模式(AUTO_PST=1且XY_PST=0)以下面的步骤工作:触摸屏控制器将自动地切换X轴坐标和Y轴坐标并读取两个坐标轴方向上的坐标。触摸屏控制器自动将测量得到的X轴数据写入到ADCDAT0寄存器的XPDATA域,然后将测量到的Y轴数据到ADCDAT1的YPDATA域。自动(连续)转换之后,触摸屏控制器产生中断源(INT_ADC)到中断控制器。(4)等待中断模式当触摸屏控制器处于等待中断模式下时,它实际上是在等待触摸笔的点击。在触摸笔点击到触摸屏上时,控制器产生中断信号(INC_TC)。中断产生-4-后,就可以通过设置适当的转换模式(分离的X/Y轴坐标转换模式或自动X/Y轴坐标转换模式)来读取X和Y的位置。(5)静态(Standby)模式当ADCCON寄存器的STDBM位被设为1时,Standby模式被激活。在该模式下,A/D转换操作停止,ADCDAT0寄存器的XPDATA域和ADCDAT1寄存器的YPDATA(正常ADC)域保持着先前转换所得的值。2.2、设计总体方案1、软件(1)EmbestOnlineFlashProgrammerForARM:EmbestFlash在线编程器(2)HYPERTERMINAL(超级终端):传送vivi.nand;-5-传送vivi.nandviviloadflashkernelx回车烧写更新内核,传送zImage文件;等待传送内核文件-6-传送内核:viviloadflashrootj回车烧写更新文件系统;烧写新的文件系统loadflashrootj(3)EmbestIDEProforARM:应用于嵌入式软件开发的新一代集成开发环境,是一个高度集成的图形界面操作环境,包含编辑器、编译汇编链接器、调试器、工程管理、Flash编程等工具;支持的开发语言包括标准C和汇编语言。(4)cygwin:一个在windows平台上运行的unix模拟环境,它对于学习unix/linux操作环境,或者从un
本文标题:嵌入式课程设计之触摸屏程序设计
链接地址:https://www.777doc.com/doc-6405096 .html