



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于S3C2440的触摸屏设计 韩伟峰 (合肥工业大学仪器科学与光电工程学院,安徽合肥230009) 0引言 近年来,随着材料科学和智能设备的发展,触控设备越来越受到人们的喜爱,成为时代的潮流。究其原因,触摸屏有以下优点:易于交流、坚固耐用、反应速度快等。S3C2440A是一款基于ARM920T内核的高性能嵌入式控制芯片,采用0.13um的CMOS标准宏单元和存储器单元,内部含有A/D转换器和LCD控制器,可以编程LCD控制器来支持不同涉及数据接口的数据线宽度、接口时序和刷新率的需要。 本文研究在S3C2440A平台下使用A/D转换器及LCD控制器驱动触摸屏显示的技术。 1触摸屏接口及A/D转换器工作原理 S3C2440A集成4线制电阻式触摸屏接口,触点坐标检测是通过A/D转换来实现。A/D转换器支持片上采样-保持功能和掉电模式的操作。 触摸屏接口可以控制/选择触摸屏X、Y方向的引脚(XP,XM,YP,YM)的变换,触摸屏接口包括触摸屏引脚控制逻辑和带中断发生逻辑的ADC接口逻辑。 触摸屏控制器可工作在分离的X/Y方向转换模式之一,X方向模式写X方向转换数据到ADCDAT0。Y方向模式写Y方向转换数据到ADCDAT1。等待中断模式是在触笔落下时产生一个中断,A/D触摸屏控制寄存器ADCTSC的值应为0XD3,在系统响应中断后,XY坐标的测量模式必须为无操作模式。在一般情况下,为实现触摸屏功能,先设置为等待中断模式,产生中断后,设置为自动XY坐标转换模式,依次读取触点坐标值。在等待中断模式下,上拉电阻需要有效状态,在触发中断后,上拉电阻需要在无效状态。 2LCD控制器工作原理 S3C2440A的LCD控制器由从位于系统存储器的视频缓冲区到外部LCD驱动器的转移LCD图像数据逻辑组成。其支持1位每像素、2位每像素、4位每像素和8位每像素的调色TFT彩色LCD面板连接,另外,通过使用基于时间的抖动算法和帧频控制(FRC)方法,可以连接到8位每像素(256色)的彩色LCD面板和连接到12位每像素(4096色)的STNLCD。LCD控制器有一个支持从位于系统存储器的视频缓冲器接收图像数据的专用DMA,以上两种类型LCD都具有以下的功能: (1)专用中断功能(INT_FrSyn和INT_FiCnt); (2)使用系统存储器作为显存; (3)支持多种虚拟平(支持硬件水平及垂直滚动); (4)可编程不同显示面板的时序控制。 S3C2440ALCD控制器是用于传输视频数据和产生必要的控制信号,如VFRAME、VLINE等等。除了控制信号之外,S3C2440A还有视频数据的数据端口。通过使用专用DMA,可以在屏幕上显示视频数据而不需CPU介入。VIDPRCS接收LCDCDMA的视频数据并且在将其变换为适当格式后通过VD23:0数据端口发送视频数据到LCD驱动器。TIMEGEN由可编程逻辑组成来支持发现不同LCD驱动器的一般接口时序和速率的变化需要。 3S3C2440A触摸屏接口设计 本设计采用5.6寸TFTLCD显示器+触摸屏,分辨率640*480。 在开始实现触摸屏前,要对其校正。触摸屏和LCD是两种不同的物理器件。触摸屏处理的数据是点的物理坐标,该坐标是通过触摸屏控制器采集到的。想实现触摸屏上的物理坐标与LCD上的像素点坐标一一对应,两者就需要一定的转换,即校正。较常见的校正方法是三点校正法,其原理是: 设LCD上每个点PD的坐标为XD,YD,触摸屏上每个点PT的坐标为XT,YT。要实现触摸屏上的坐标转换为LCD上的坐标,需下列公式进行转换:XDAXTBYTC;YDDXTEYTF。其中一共有六个参数(A,B,C,D,E,F),因此只需三个取样点就可以求得这六个参数。这六个参数确定下来,只要给出任意触摸屏上的坐标点PT,代入这个公式,就可得到它所对应的LCD上像素点的坐标PD。 4软件设计 下面是实现触摸屏功能的简单实例,即以触点为中心绘制出一个红色的边长为10个像素的正方形。触点坐标用下面方法得到:触笔落下时,进入中断,读取触点坐标,直到触笔抬起,退出该次中断。由于触摸屏需校正,因此使用之前需进行校正处理。这里,利用EEPROM来保存这几个参数,即A,B,C,D,E,F,K分别保存在以0x20,0x30,0x40,0x50,0x60,0x70,0x80为首地址内存的连续4个字节空间内。校正时,需要三个取样点,在这里选取LCD上的(32,24),(160,216),(288,120)为这三个取样点,只需依次点击这三点,即可完成触摸屏校正。 voidTSCal(void) inti=0; intxt3,yt3; Brush_Background(0,0,LCD_WIDTH,LCD_HEIGHT,0xFFFFFF); drawCross(32,24,0xFF0000); Draw_ASCII(36,28,0xFF0000,one); drawCross(160,216,0xFF0000); Draw_ASCII(164,220,0xFF0000,two); drawCross(288,120,0xFF0000); Draw_ASCII(292,124,0xFF0000,three); for(i=0;i3;i+) /*依次读取三个采样点的坐标值*/ while(flagTS=0) delay(500); xti=xdata; yti=ydata; flagTS=0; /*计算参数*/ K=(xt0-xt2)*(yt1-yt2)-(xt1-xt2)*(yt0-yt2); A=(32-288)*(yt1-yt2)-(160-288)*(yt0-yt2); B=(xt0-xt2)*(160-288)-(32-288)*(xt1-xt2); C=yt0*(xt2*160-xt1*288)+yt1*(xt0*288-xt2*32)+yt2*(xt1*32-xt0*160); D=(24-120)*(yt1-yt2)-(216-120)*(yt0-yt2); E=(xt0-xt2)*(216-120)-(24-120)*(xt1-xt2); F=yt0*(xt2*216
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江西加油罐采购合同范本
- 锡山区餐饮投资合同范本
- 物业空调安装免责协议书
- 灌溉水渠修复协议书范本
- 用工程货款买房合同范本
- 法律欠款回收协议书范本
- 腻子工工程分包合同范本
- 父母卖房给子女合同范本
- 机械厂临时工合同协议书
- 砖窑摊位转让协议书模板
- 京沪高铁某段现浇箱梁施工方案
- 企业用工风险劳动合同风险防控培训课件
- GB/T 5053.3-2006道路车辆牵引车与挂车之间电连接器定义、试验方法和要求
- 加工中心个人简历
- 最新《工会基础知识》试题库及答案1000题【完美打印版】
- 高周波熔接机操作指导书
- 产钳助产术考核标准
- T∕CCTA 30101-2021 喷气涡流纺棉本色纱
- 上海石化挤出机组交流材料概要课件
- 医院关于成立食堂食品安全领导小组的通知
- 《村卫生室管理办法(试行)》课件(PPT 49页)
评论
0/150
提交评论