二、S3C2410 模数转换器(ADC)及触摸屏控制器
S3C2410内置1个8信道的10bit模数转换器(ADC),该ADC能以500KSPS的采样资料将外部的模拟信号转换为10bit分辩率的数字量。同时ADC部分能与CPU的触摸屏控制器协同工作,完成对触摸屏绝对地址的测量。
特性:
-分辩率:10bit
-相信误差:+/- 2LSB
-最大转换速率:500KSPS
-模拟量输入范围:0~3.3V
-分步 X/Y坐标测量模式
-自动X/Y坐标测量模式
-中断等待模式
随后的图是在S3C2410的ADC以及触摸屏控制器的基础上外接触摸屏的示意图,以及外部电路的实际原理图。需要补充说明的是,图中Q1、Q2为P沟道 MOS管,开门电压为1.8V;Q3、Q4为N沟道MOS管,开门电压为2.7V。运用学过的电子电路的知识,我们知道当MOS管导通后(栅极电压达到开门电压之后),MOS管的源-漏极之间可以认为是直通的(导通电阻为毫欧级),即可以把MOS管认为是图4-7中真正的“开关”。 AVDD 是外部模拟参考源,一般接3.3V电源,XP、XM和YP、YM分别是触摸屏的4条引线,各自对应X轴和Y轴电阻。
ADC及触摸屏控制器的工作模式:
1、 ADC普通转换模式(Normal Converson Mode)
普通转换模式(AUTO_PST=0,XY_PST=0)是用来进行一般的ADC转换之用的,例如通过ADC测量电池电压等等。
2、 独立X/Y轴坐标转换模式(Separate X/Y Position Conversion Mode)
独立X/Y轴坐标转换模式其实包含了X轴模式和Y轴模式2种模式。
首先进行X轴的坐标转换(AUTO_PST=0,XY_PST=1),X轴的转换资料会写到ADCDAT0寄存器的XPDAT中,等待转换完成后,触摸屏控制器会产生相应的中断。
然后进行Y轴的坐标转换(AUTO_PST=0,XY_PST=2),Y轴的转换资料会写到ADCDAT1寄存器的YPDAT中,等待转换完成后,触摸屏控制器会产生相应的中断。
3、 自动X/Y轴坐标转换模式(Auto X/Y Position Conversion Mode)
自动X/Y轴坐标转换模式(AUTO_PST=1,XY_PST=0)将会自动地进行X轴和Y轴的转换操作,随后产生相应的中断。
4、 中断等待模式(Wait for InterruptMode)
在系统等待“Pen Down”,即触摸屏按下的时候,其实是处于中断等待模式。一旦被按下,实时产生“INT_TC”中断信号。每次发生此中断都,X轴和Y轴坐标转换资料都可以从相应的资料寄存器中读出。
5、 闲置模式(Standby Mode)
在该模式下转换资料寄存器中的值都被保留为上次转换时的资料。
ADC及触摸屏控制器的寄存器详解
ADCCON :ADC控制寄存器
ENABLE_START :
置1:启动ADC转换
置0:无操作
RESR_START :
置1:允许读操作启动ADC转换
置0:禁止读操作启动ADC转换
STDBM:
置1:将ADC置为闲置状态(模式)
置0:将ADC置为正常操作状态
SEL_MUX:选择需要进行转换的ADC信道
PRSCVL:ADC转换时钟预分频参数
PRSCEN:ADC转换时钟使能
ECFLG:ADC转换完成标志位(只读)
为1:ADC转换结束
为0:ADC转换进行中
ADCTSC :触摸屏控制寄存器(见图6-10)
XY_PST :对X/Y轴手动测量模式进行选择
AUTO_PST:X/Y轴的自动转换模式使能位
PULL_UP :XP端的上拉电阻使能位
XP_SEN :设置nXPON输出状态
XM_SEN :设置XMON输出状态
YP_SEN :设置nYPON输出状态
YM_SEN :设置YMON输出状态
ADCDLY :ADC转换周期等待定时器
ADCDAT0 :ADC资料寄存器0
XPDATA :X轴转换资料寄存器
XY_PST :选择X/Y轴自动转换模式
AUTO_PST:X/Y轴自动转换使能位
UPDOWN :选择中断等待模式的类型
为0:按下产生中断
为1:释放产生中断
ADCDAT1 : ADC资料寄存器1
定义类同于ADCDAT0。