touchscreem

<触摸屏种类>

常见

电阻式触摸屏

电容式触摸屏

不常见

红外线技术触摸屏

表面声波触摸屏

适量压力传感触摸屏

 

<原理分析>

电阻式触摸屏

 

如图所示,在屏幕的上下和左右加上一个5V电压,将这个5V根据屏幕的长度分成不同的电压值,只要将屏幕的上下接触,就可以检测出该点是电压,然后除以总的电压5V就可以找出其中的比例,这样就可以确定该点的X,Y了。

 

 

电容屏:

 

 

给工作屏一个很低的电压,手指接触屏幕时,手指将吸收走一步分电流,这个电流将从触模屏 的四个角流出,理论上流经这四个电极的电流与距离成比例,根据这个原理来确定触摸点的X,Y

<驱动程序设计>

初始化:

AD时钟初始化

AD转化控制寄存器

用于初始化AD转化时钟

 

控制字详情:

ADCLK = PCLK/(value+1) &&ADCLK<2MHz

 

中断屏蔽

                       TC中断

 

AD中断是总的中断
                    

                      AD转换中断

 

 

 

 

支持TC中断(touch screen)和ADC中断(模数转换中断)

 

中断屏蔽寄存器:

 

 

控制字详情

 

子中断屏蔽寄存器

 

子中断控制字

 

进入等待中断模式

 

ADC状态寄存器:

 

等待中断模式详情;

 

 

 

TC中断处理:

启动XY坐标自动转化

触摸屏AD控制器

 

控制字详情(使能xy自动轴转换)

 

 

 

AD转化控制寄存器

 

控制字详情(使能AD转化)

 

等待转化完成

AD转换控制寄存器

 

控制字详情(结束转换标志位)

 

获取坐标

AD转化数据寄存器0

 

数据存储位

 

AD转化数据寄存器1

 

数据存储位

 

清除中断

 

进入等待TC中断模式

触摸屏AD转换状态寄存器

 

状态字详情(检测按下还是弹起)

 

清除弹起中断

 

进入等待模式

posted @ 2018-03-17 13:55  流浪的Coder  阅读(185)  评论(0编辑  收藏  举报