文章目录

  • 一、简介
  • 二、引脚及其功能
  • 三、工作原理
  • 四、内部结构
  • 五、作用和用途
  • 六、示例代码

一、简介

XPT2046 四线电阻式触摸屏,主要由两层镀有ITO镀层的薄膜组成。其中一层在屏幕的左右边缘各有一条垂直总线,另一层在屏幕的底部和顶部各有一条水平总线,如果在一层薄膜的两条总线上施加电压,在ITO镀层上就会形成均匀电场。当使用者触击触摸屏时,触击点处两层薄膜就会接触,在另一层薄膜上就可以测量到接触点的电压值。

下图为XPT2046的功能框图,可见XPT2046内部包含了一个多路选择器,能够测量电池电压、AUX电压、芯片温度。一个12位的ADC用于对选择的模拟输入通道进行模数转换,得到数字量,然后送入控制逻辑电路,供主控CPU进行读取,同时,具体选择哪个通道进行转换,也是由主控CPU发送命令给控制逻辑来设置的。

XPT支持笔触中断,即当触摸屏检测到触摸被按下时,可以立即产生笔触中断,通知主控制器可以控制开始转换并读取数据。在转换过程中,通过busy信号指示当前忙状态,以避免主控发出新的命令中断之前的命令。

二、引脚及其功能



XPT2046通过SPI接口与主控制器进行通信,其与主控制器的接口包括以下信号:

PENIRQ_N:笔触中断信号,当设置了笔触中断信号有效时,每当触摸屏被按下,该引脚被拉为低电平。当主控检测到该信号后,可以通过发控制信号来禁止笔触中断,从而避免在转换过程中误触发控制器中断。该引脚内部连接了一个50K的上拉电阻。

CS_N:芯片选中信号,当CS_N被拉低时,用来控制转换时序并使能串行输入/输出寄存器以移出或移入数据。当该引脚为高电平时,芯片(ADC)进入掉电模式。

DCLK:外部时钟输入,该时钟用来驱动SARADC的转换进程并驱动数字IO上的串行数据传输。

DIN:芯片的数据串行输入脚,当CS为低电平时,数据在串行时钟DCLK的上升沿被锁存到片上的寄存器。

DOUT:串行数据输出,在串行时钟DCLK的下降沿数据从此引脚上移出,当CS_N引脚为高电平时,该引脚为高阻态。

BUSY:忙输出信号,当芯片接收完命令并开始转换时,该引脚产生一个DCLK周期的高电平。当该引脚由高点平变为低电平的时刻,转换结果的最高位数据呈现在DOUT引脚上,主控可以读取DOUT的值。当CS_N引脚为高电平时,BUSY引脚为高阻态。

三、工作原理

XPT2046是一种典型的逐次逼近型模数转换器(SARADC),包含了采样/保持、模数转换、串口数据输出等功能。同时芯片集成有一个2.5V的内部参考电压源、温度检测电路,工作时使用外部时钟。XPT2046可以单电源供电,电源电压范围为2.7V~5.5V。参考电压值直接决定ADC的输入范围,参考电压可以使用内部参考电压,也可以从外部直接输入1V~VCC范围内的参考电压(要求外部参考电压源输出阻抗低)。X、Y、Z、VBAT、Temp和AUX模拟信号经过片内的控制寄存器选择后进入ADC,ADC可以配置为单端或差分模式。选择VBAT、Temp和AUX时可以配置为单端模式;作为触摸屏应用时,可以配置为差分模式,这可有效消除由于驱动开关的寄生电阻及外部的干扰带来的测量误差,提高转换准确度。

下图为XPT2046的典型工作电路:

XPT2046有四个引脚,用于连接到四线制电阻屏的FPC上,分别为XP、XN、YP、YN,连接到对应的四线制电阻屏的X电极的正端、负端和Y电极的正端、负端。此四个引脚每个都能工作于两种状态,分别为电源/GND输出、ADC输入。例如设置ADC工作在差分模式,当测量X方向的坐标时,XP输出VCC、XN连接到GND,此时,YP和YN作为ADC的差分输入脚连接到ADC上,通过测量YP和YN之间的电压差来得到当前触摸点的X位置。同理,当测量Y方向的坐标时,YP输出VCC、YN连接到GND、此时,XN和XP作为ADC的差分输入脚连接到ADC上,通过测量YP和YN之间的电压差来得到当前触摸点的Y位置。

四、内部结构

五、作用和用途

典型应用:

24时钟周期转换

读写时序

了解了XPT2046的接口电路,接下来我们就可以通过主控MCU或FPGA来控制该芯片实现坐标的读取了。要想正确的读到X、Y坐标,需要按照芯片规定的控制协议进行数据的读写。XPT2046实现一次X、Y坐标的读取需要完成两次转换,单一一次转换只能得到单一X或Y的坐标,因此,我们必须通过两次控制才能到到结果。至于每一次转换的对象为X或Y坐标,由控制器发出的控制字决定。ADC在转换时能够被配置为单端或差分模式,具体的控制字在每次传输开始的时候,由主控MCU驱动DIN信号传输。下图为XPT2046典型的24时钟周期转换控制时序:

XPT2046数据接口是串行接口,其典型工作时序如上图所示,图中展示的信号来自带有基本串行接口的单片机或数据信号处理器。处理器和转换器之间的的通信需要8个时钟周期,可采用SPI、SSI和Microwire等同步串行接口。一次完整的转换需要24个串行同步时钟(DCLK)来完成。

前8个时钟用来通过DIN引脚输入控制字节。当转换器获取有关下一次转换的足够信息后,接着根据获得的信息设置输入多路选择器和参考源输入,并进入采样模式,如果需要,将启动触摸面板驱动器。3个多时钟周期后,控制字节设置完成,转换器进入转换状态。这时,输入采样-保持器进入保持状态,触摸面板驱动器停止工作(单端工作模式)。接着的12个时钟周期将完成真正的模数转换。如果是度量比率转换方式(SER/DFR——=0),驱动器在转换过程中将一直工作,第13个时钟将输出转换结果的最后一位。剩下的3个多时钟周期将用来完成被转换器忽略的最后字节(DOUT置低)。

六、示例代码

XPT2046 读取AD值

unsigned int XPT2046_ReadAD(unsigned char Command)
{unsigned char i;unsigned int Data=0;XPY2046_DCLK=0;XPY2046_CS=0;for(i=0;i<8;i++){XPY2046_DIN=Command&(0x80>>i);XPY2046_DCLK=1;XPY2046_DCLK=0;}for(i=0;i<16;i++){XPY2046_DCLK=1;XPY2046_DCLK=0;if(XPY2046_DOUT){Data|=(0x8000>>i);}}XPY2046_CS=1;return Data>>8;
}

XPT2046 四线电阻式触摸屏相关推荐

  1. STM32F407之电阻式触摸屏

    一,基础知识 1,相关网站: 中国触摸屏网---http://www.51touch.com/ 2,电阻技术触摸屏的最基本的原理 :当手指触摸屏幕时,两层导电层在触摸点位置就有了接触,电阻发生变化,在 ...

  2. 基于 mini2440 电阻式触摸屏:电阻式触摸屏工作原理

    ========================================================== 开发环境 编译系统 :fedora9 编译器 :arm-linux-4.4.3 主 ...

  3. 一个单片机搞定USB电阻式触摸屏,完美解决飞点问题。

    一个单片机搞定USB电阻式触摸屏,完美解决飞点问题. 参考文章: (1)一个单片机搞定USB电阻式触摸屏,完美解决飞点问题. (2)https://www.cnblogs.com/zkp2010/ar ...

  4. 电阻式触摸屏的驱动程序和详细注释

    电阻式触摸屏的驱动程序和详细注释 #include <linux/config.h> #include <linux/errno.h> #include <linux/k ...

  5. 电容屏和电磁屏 一:电阻式触摸屏 二:电容式触摸屏以及原理 三:电磁感应触摸屏 PDF电磁屏签名: 签名完成后,点坐转化文件: android 开发 实现网页跳转

    目录 电容屏和电磁屏 一:电阻式触摸屏 二:电容式触摸屏以及原理 三:电磁感应触摸屏

  6. x210---电容式触摸屏学习笔记

    1.电容触摸屏的原理 电容式触摸屏技术是利用人体的电流感应进行工作的.电容式触摸屏是一块四层复合玻璃屏,玻璃屏的内表面和夹层各涂有一层ITO,最外层是一薄层矽土玻璃保护层,夹层ITO涂层作为工作面,四 ...

  7. x210---电阻式触摸屏学习笔记

    1.输入类设备简介 1.1.input/output (1)IO输入输出,是计算机系统中的一个概念.计算机的主要功能就是从外部获取数据然后进行计算加工得到输出数据并输出给外部(计算机可以看成数据处理器 ...

  8. 四线电阻触摸屏原理(仅作为学习记录)

    转载自:http://www.elecfans.com/kongzhijishu/renjijiemian/596589.html 四线电阻触摸屏原理_qlexcel的专栏-CSDN博客_电阻触摸屏原 ...

  9. 第三章-电阻式传感器

    第三章-电阻式传感器 这一章节主要讲一种传感器-应变式传感器 想看实物结构: 一.应变效应 1.需要回忆的知识体系 全微分 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img ...

  10. 【Arduino和高中通用技术】——十一、BF1K-3AA系列电阻式压力应变片、HX711压力传感器和另一种按键去抖动方法

    一.压力应变片 电阻式压力应变片比一些体重秤上使用的电压式压力应变片精度要高,但是成品的压力模块往往动辄几百元而且形态不能满足我们的各种"奇葩"应用.而这种裸片价格便宜,所以在最近 ...

最新文章

  1. Python培训教程分享:Python模块如何导入__all__属性?
  2. HDU 1285--确定比赛名次【拓扑排序 amp;amp; 邻接表实现】
  3. 电脑删除linux系统,我的电脑现在装有XP和Linux两个系统,现在想删除Linux系统,开机不用选直接进入XP。不知怎么做??...
  4. cache性能分析实验 北邮_北邮人又获奖啦快来点赞!
  5. 前端学习(3143):react-hello-react之总结生命周期
  6. 软件安全测试:安全左移的痛点与要点
  7. 从工作到创业迈开这一步很艰难吗
  8. UEditor应用 —— 图片上传
  9. php curl修改ip,php中curl设置ip的方法
  10. 数据挖掘十大算法-决策树的实现
  11. CAM是利用计算机,利用DroidCam将手机摄像头打造成计算机摄像头
  12. 决策树 BP神经网络(BPNN) SVM实现iris鸢尾花数据集的分类
  13. Python之scipy安装
  14. win11假死没反应怎么办 windows11假死没反应的解决方法
  15. 如何画一个对话气泡框(css实现)
  16. python中集合的概念
  17. HP LaserJet Pro MFP M227d安装指南
  18. ESP8266开发板刷WI-PWN固件(wifi杀手)教程(详细)
  19. 故障--桥接网卡的坑
  20. 方法简单手把手教你,空闲时间在家剪辑视频,一天收入300多

热门文章

  1. 是指因计算机网络不安全导致的风险,网络安全知识竞赛题库
  2. 做好目标管理和任务管理,提高办公协同效率
  3. 阳光房行业现状调研及趋势分析报告
  4. 锁仓量突破40亿美元、公链集体押注,DeFi真的具有可持续性吗?
  5. 十进制和二进制相互转换
  6. l曲线 matlab,L曲线确定岭参数
  7. Vue3+elementplus搭建通用管理系统实例六:后台主页搭建下
  8. NXP S32K146 FLEXI2C底层驱动+IAM-20680(一)
  9. 论文阅读(1)Large Pose 3D Face Reconstruction from a Single Image via Direct Volumetric CNN Regression
  10. “脑科学”已成大国“必争之地” 看各国都亮哪些大招 | 2030年中国脑计划将闯入“终极疆域” 脑科学将成为大国必争之地