XPT2046
XPT2046 是一种典型的逐次逼近型模数转换器(SAR ADC),包含了采样/保持、模数转换、串口数据输出等功能。( 采样:将一个时间上连续变化的模拟量转化为时间上离散的变化量。 保持:将采样结果存储起来,知道下次采样。 数模转换包含量化和编码。量化:将采样电平归化与之接近的离散数字电平。编码:将量化之后的结果按照一定的数制形式表示。)
XPT2046 能通过执行两次 A/D 转换查出被按的屏幕位置,除此之外,还可以测量加在触摸屏上的压力。内部自带 2.5V 参考电压,可以作为辅助输入、温度测量和电池监测 之用,电池监测的电压范围可以从 0V 到 6V。(五种工作模式:屏幕触摸位置测量、触屏压力测量、电池监测、环境温度测量、辅助输入)
引脚说明:
理解:
1、DIN:数据输入,命令由单片机输入本芯片。
2、DOUT:数据输出,经ADC转换后的数据由本芯片输出至单片机。
应用电路:
两种工作方式:
1、单端工作模式:SER/DFR置为高电平时,XPT2046 工作在单端模式。此模式在采样过程完成后,转换过程中可以关闭驱动开关,降低功耗。但缺点在于精度直接受参考电压源的精度限制,且会有误差。芯片在进行温度测量、电池电压测量、辅助输入时均使用单端工作模式。
2、差分工作模式:SER/ DFR置为低电平时,XPT2046 为差分工作模式。差分模式的优点是:+REF 和-REF 的输入分别直接接到 YP、YN 上,可消除由于驱动开关的导通电 阻引入的坐标测量误差。缺点是:无论是采样还是转换过程中,驱动开关都需要接通,相对单端模式而 言,功耗增加了。芯片在进行触摸屏相关的工作时,均使用差分工作模式。
控制工作方式的控制字:
A2~A0具体值设定:
注:实际工作时,不同的线路连接情况有不同的命令控制字,对应不同的
PD0~PD1:
内部参考电压与外部参考电压:
XPT2046 的内部 2.5V参考电压源可通过控制位PD1进行关闭或者打开,置0为关闭。一般地,内 部参考电压只用于单端模式下VBAT、Temp和AUX输入测量。对于外部参考电压:+REF和-REF之间的电压差决定了模拟输入的电压范围。XPT2046 的 参考电压输入范围为 1V~ VCC。参考电压越低,则ADC输出的二进制数据结果每一个数字位所代表的模拟电压也越低。 在 12 位工作方式下,数据结果的最低位所代表的模拟电压为VREF/4096,其余位依此类推。
功用说明:
温度测量:
电压测量:读取到电位器的值value之后,由如下公式得电压值:V=Vref(即参考电压)*value/分辨率。 (分辨率=2的N次方,取决于是几位的工作方式)
压力测量:
代码相关:
1、数据输入:从高位到低位。DCLK下降沿送入数据。
2、重要函数:写命令函数(写入八位控制字)、写数据函数(送入12位数据,由线路直接输入,参数类型为void)、转换数据函数(将数据进行转换,参数为八位控制字。在此函数中调先调用写命令函数、判忙后,再调用写数据函数)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!