触摸屏---XPT2046
简介
XPT2046 四线电阻式触摸屏,主要由两层镀有ITO镀层的薄膜组成。其中一层在屏幕的左右边缘各有一条垂直总线,另一层在屏幕的底部和顶部各有一条水平总线,如果在一层薄膜的两条总线上施加电压,在ITO镀层上就会形成均匀电场。当使用者触击触摸屏时,触击点处两层薄膜就会接触,在另一层薄膜上就可以测量到接触点的电压值。
首先简单介绍一下4线电阻触摸屏的驱动原理➡️在这可以看看原理
电阻触摸屏内部结构:
当按下触摸屏时RX-、RX+、RY-、RY+的阻值会发生变化,测量到他们的阻值,就得到了按下的位置�?
- 要得到X坐标,就在X+电极施加驱动电压V,X-接地,然后通过Y+或Y-测量电压值,就可以得到RX+、RX-的阻值关系了。
- 要得到Y坐标,就在Y+电极施加驱动电压V,Y-接地,然后通过X+或X-测量电压值,就可以得到RY+、RY-的阻值关系了。
XPT2046的介绍
XPT2046是一款4线制电阻式触摸屏控制器,内含12位分辨率125KHz转换速率逐步逼近型A/D转换器。XPT2046支持从1.5V到5.25V的低电压I/O接口XPT2046能通过执行两次A/D转换查出被按的屏幕位置, 除此之外,还可以测量加在触摸屏上的压力。内部自带2.5V参考电压,可以作为辅助输入、温度测量和电池监测之用,电池监测的电压范围可以从0V到6V。XPT2046片内集成有一个温度传感器。 在2.7V的典型工作状态下,关闭参考电压,功耗可小于0.75mW。
XPT2046可以单电源供电,电源电压范围为2.7V~5.5V。参考电压值直接决定ADC的输入范围,参考电压可以使用内部参考电压,也可以从外部直接输入1V到VCC范围内的参考电压(要求外部参考电压源输出阻抗低)。
内部框图
可以看到有一个多路选择器,负责选择哪一路送入后面的ADC进行采样。
多路选择器的输入有:
- XPT2046的内部温度传感器,可以用来测量它自身的温度
- VBAT引脚的输入经过R1和R2分压后的电压值,可以用来测量外部电池的电压值。
- AUX引脚的电压值
- X-、X+、Y-、Y+引脚的电压值
X-、X+、Y-、Y+引脚后面连接着MOS管,控制逻辑可以打开MOS管3和4把X-、Y-接地。也可以打开MOS管1和2把X+、Y+接VCC。 要测量X坐标时,就把MOS管1和3打开,然后多路选择器选择Y-或Y+进行采样。
引脚图和应用原理图
VBAT:电池电源监控脚,不用悬空即可。
IN:ADC辅助通道,不用悬空即可。
VREF:参考电压的输入引脚,当使用外部参考电压时连接参考电压到该脚,不用悬空即可。
PENIRQ:笔触中断信号,当设置了笔触中断信号有效时,每当触摸屏被按下,该引脚被拉为低电平。当主控检测到该信号后,可以通过发控制信号来禁止笔触中断,从而避免在转换过程中误触发控制器中>..断。该引脚内部连接了一个50K的上拉电阻。
CS:芯片选中信号,当CS_N被拉低时,用来控制转换时序并使能串行输入/输出寄存器以移出或移入数据。当该引脚为高电平时,芯片(ADC)进入掉电模式。
DCLK:外部时钟输入,该时钟用来驱动SARADC的转换进程并驱动数字IO上的串行数据传输。
DIN:芯片的数据串行输入脚,当CS为低电平时,数据在串行时钟DCLK的上升沿被锁存到片上的寄存器。
DOUT:串行数据输出,在串行时钟DCLK的下降沿数据从此引脚上移出,当CS_N引脚为高电平时,该引脚为高阻态。
BUSY:忙输出信号,当芯片接收完命令并开始转换时,该引脚产生一个DCLK周期的高电平。当该引脚由高点平变为低电平的时刻,转换结果的最高位数据呈现在DOUT引脚上,主控可以读取DOUT的值。当CS引脚为高电平时,BUSY引脚为高阻态。
参考电压
+REF和-REF之间的电压差决定了模拟输入的电压范围。在12位分辨率下,数据结果最小值为VREF/4096。
通信时序
通信的过程很简单,首先主机向XPT2046写入8个字节的控制字节,然后从XPT2046中读出转换数据即可,读出来的数据有16位,只有高12位是有效数据。控制字节的含义如下:
通道选择
单端模式或差分模式的区别
单端模式简单,在采样过程完成后,转换过程中可以关闭驱动开关,降低功耗。但这种模式的缺点是精度直接受参考电压源的精度限制,同时由于内部驱动开关的导通电阻存在,导通电阻与触摸屏电阻的分压作用,也会带来测量误差。
差分模式的优点是:+REF和-REF的输入分别直接接到YP、YN上,可消除由于驱动开关的导通电阻引入的坐标测量误差。缺点是:无论是采样还是转换过程中,驱动开关都需要接通,相对单端模式而言,功耗增加了。
电源模式
ADC的内部参考电压可以单独关闭或者打开,但是,在转换前,需要额外的时间让内部参考电压稳定到最终稳定值;如果内部参考源处于掉电状态,还要确保有足够的唤醒时间。ADC要求是即时使用,无唤醒时间的。另外还得注意,当BUSY是高电平的时候,内部参考源禁止进入掉电模式。XPT2046的通道改变后,如果要关闭参考源,则要重新对XPT2046写入命令。