XPT2046是逐次逼近型模数转换器(SAR ADC),包括:采样/保持、模数转换、串口数据输出电路等。框图演示了片内多路选择器、ADC的模拟差分输入和差分参考电压基准。本次测试,我们作为触摸屏用途,XPT2046具有差分模式,可以有效消除由驱动开关带来的寄生电阻和外部干扰(共模干扰)的影响,提高转换精度,其中XP、XN以及YP、YN彼此构成差分对。内部集成2.5V的参考电路,可以选择内部参考或者外部引脚的参考,作为ADC转换的基准,为了提高稳定性,自然使用外部的稳定参考源,比如:外部的REF2925电路或LM285电路。
我们选用ADC的差分输入,将xP和xN分别接入IN+和IN-,相互抵消共模干扰,一般我们称这种电路为差动电路,所以这个电路我理解是做了前端差动放大器电路,再被ADC采集。
所有的转换逻辑由Logic部分电路对MOS开关,实现资源分配,以及协调框架中的开关来影响最终的效果。
手册中提到针对触摸屏的应用应当添加适当的电容过滤触摸屏使用过程自带的噪音。
控制方法上图列举了所有的模式对应的控制指令,以及实际编程使用过程中的注意点,以及电压与获取数值的对应关系,以及通讯过程的注意参数。
代码do{
reVal = XPT2046_Write_Command();
vTaskDelay(100);
}while(reVal != kStatus_Success);
reVal = kStatus_Fail;
do{
reVal = XPT2046_Read_Data();
vTaskDelay(100);
}while(reVal != kStatus_Success);