设为首页 加入收藏

TOP

S3C2440裸奔触摸屏
2014-11-24 12:57:55 来源: 作者: 【 】 浏览:0
Tags:S3C2440 裸奔 触摸屏

S3C2440对于触摸屏的相关interface有以下几个模式:


1.普通转换模式,手册是这么说的:most likely used for General Purpose ADC Conversion.(不了解这个,所以用原文)


2.分开X/Y转换模式,就是分开来转换X位置和Y位置。X位置的信息会保存在ADCDAT0的低10位,而Y位置信息则保存在ADCDAT1的低10位。


3.自动X/Y转换模式,就是会把和X和Y一起转换,然后X,Y位置信息保存跟上面一样,也是在ADCDAT0,ADCDAT1的低10位。(我想一般会用这个模式)


4.等待中断模式,也就是等待触摸屏的中断,ADCTSC=0xd3就是等待笔尖放下时产生中断,而ADC=0xd3|(1<<8)就是笔尖抬起时产生中断。


参考手册弄出来也不难,只是提醒一下ADCUPDN这个寄存器是会标记当前的中断是笔尖放下还是抬起的。只是读完之后就要记得把它清0,在这个地方卡了很久,后来想到手册既然没说这个寄存器会自动清0,那就自己手动帮他清0吧。果然是这样。


下面列出关键代码,使用自动X/Y转换模式:


void __irq lhg_tsINT(void) //中断函数
{
rINTSUBMSK |= ((U32)0x1<<9); //关闭中断服务

if ( rADCUPDN&(U32)0x01 ) //现在是down
{
ts=0; //这是一个全局变量,调试时会来登记一下触摸屏是否转换了新的XY坐标
rADCUPDN=0;
uart_print_str("/r/ndown");//自己做的串口打印函数




】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux C程序实现文件夹大小提取 下一篇S3C2440定时器的使用

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Python中文网 - 人生 (2025-12-24 18:49:47)
·【整整648集】这绝对 (2025-12-24 18:49:44)
·Python超详细一条龙 (2025-12-24 18:49:42)
·【超详细】JDK 下载 (2025-12-24 18:19:32)
·Java_百度百科 (2025-12-24 18:19:29)