求电容触摸屏的坐标定位具体步骤或者说是原理?

[复制链接]
2265|24
手机看帖
扫描二维码
随时随地手机跟帖
chuxh|  楼主 | 2019-2-15 11:45 | 显示全部楼层 |阅读模式
求电容触摸屏的坐标定位具体步骤或者说是原理?
juventus9554| | 2019-2-15 11:49 | 显示全部楼层
电容触摸屏坐标定位不是用软件实现的,而是通过管脚配置得到的,这和布板方式有关,比如说使用滑调,用两个10sensors的滑调(滑调1、滑调2)分别表示X轴、Y轴。滑调1的第1个传感器就是X0,依次为X1、X2.....滑调2的第一个传感器为Y0,依次为Y1、Y2....这时,软件设计时,定义下两滑调分别代表X、Y坐标轴,如:
#define XDIRECTION 1
#define YDIRECTION 2
表示滑调1为X轴,滑调2为Y轴,其中1,2并非随意定义的,如果是0,则代表单个的按钮,1,2分别代表滑0,1
之后定义扫描时只需使用如下语句调用即可:
static WORD wXPosition;
static WORD wYPosition;
wXPosition=CSD_wGetCentroidPos(XDIRECTION);
wYPosition=CSD_wGetCentroidPos(YDIRECTION);
这时的扫描到的坐标就是对应的xy坐标

使用特权

评论回复
juventus9554| | 2019-2-15 11:52 | 显示全部楼层

注:以上说明应用的是CSD模式,芯片选型CY8C24794

使用特权

评论回复
stly| | 2019-2-15 11:55 | 显示全部楼层
楼上的说的是滑条,对于电容触摸屏应该就没那么容易了吧。

使用特权

评论回复
llljh| | 2019-2-15 11:59 | 显示全部楼层
可以用10*10滑调组成一个电容触摸屏的,下图即为一个电容式触摸屏原理图,可以参考下。

使用特权

评论回复
zwll| | 2019-2-15 12:03 | 显示全部楼层
触摸屏坐标定位和矩阵机械按键的定位原理其实是一样的,只不过机械矩阵按键的按键(一个按键可以理解为一个cell)键值只有0和1,就算做的再紧密,也没办法获得好的分辨率,而且没法和显示屏叠加组合;而触摸屏的每个cell的键值可以做到0~65536,而可以用ITO材料或其他材料制作,cell紧密排列,通过触摸时各个cell的键值重心,获取更细密的坐标。

使用特权

评论回复
chuxh|  楼主 | 2019-2-15 12:06 | 显示全部楼层
能说明一下不

使用特权

评论回复
llljh| | 2019-2-15 12:09 | 显示全部楼层

X轴是列相通,Y轴为行相通

使用特权

评论回复
chuxh|  楼主 | 2019-2-15 12:12 | 显示全部楼层
那为什么自电容有鬼点问题,而互电容就能确定两个点的位置呢?

使用特权

评论回复
dingy| | 2019-2-15 12:16 | 显示全部楼层
鬼点问题是不是你每个传感器上分辨率设置的问题,分辨率设置的低点试试看

使用特权

评论回复
chuxh|  楼主 | 2019-2-15 12:18 | 显示全部楼层
鬼点问题是自电容的缺点,根本不是分辨率的问题。

使用特权

评论回复
llljh| | 2019-2-15 12:22 | 显示全部楼层

又仔细看了下鬼点问题,发现鬼点问题虽然存在,但是如果刻意避免还是能够使之影响最低化的,比如:两个手指同在一条X轴上左右平移或一Y轴上上下平移,这是没有鬼点出现的,还有就是通过检测两个手指在屏幕上的相对移动手势来实现屏幕或图片的缩放,虽然存在鬼点,但是无论是两个真是的点还是鬼点,作用效果完全相同。

用CSD实现电容触摸屏的双触点手势的检测,需要通过一些软件的判断和处理来消除鬼点的影响,在有些方案中,我们可能希望避免过多的软件处理,不希望鬼点的出现,有一种可选方案是将一个电容触摸屏分为几个区域来扫描,比如分为两个或四个,并分别对几个半屏进行扫描,这时出现鬼点的概率就大大减少了,但是这个方案需要使用更多的I/O口并具有更长的扫描周期,在软件上要考虑几个半屏的扫描同步和协调以及中间区域定位偏差的调整,因此在实际的应用中需酌情考虑。

使用特权

评论回复
llljh| | 2019-2-15 12:25 | 显示全部楼层
建议你最好不要只是单纯的追求两点触摸时一定要有某种结果出现,根据功能看是否必须需要两点触摸检测显示坐标值,如果真的需要而且屏幕不是很大或许可以考虑用单个按键组成触摸屏来实现所需要的功能。。。

使用特权

评论回复
pengf| | 2019-2-15 12:28 | 显示全部楼层

多点触摸(Multi-Touch)具有明显的优势,例如:节省空间,显示屏就是用户接口;用户接口方式多样化;设计更美观;产品差异化。然而,大多数种类触摸屏不支持这个功能,例如电阻性、表面电容、表面声波(SAW)、弯曲波、声学脉冲识别(APR)等。

几种常见的“鬼点”消除方法有:
.基于逻辑的消除方法
.分时法
.分区法(将触摸区域物理分割成多个区域)
.多点触摸识别位置方法
.基于时间的多点触摸的“鬼点”消除方法(分时法)
.假设多点触摸操作是分时发生的
.触摸操作间隔需要几毫秒时间
.第二触摸点操作会产生对应的“鬼点”
.真正的第二个触摸点与第一个触摸点呈对角状态,所以通过分时方法即可消除鬼点

多点触摸的分区式“鬼点”消除方法:
.要求整个触摸屏物理上分割成几个区域
.每个触摸屏可能有2个, 3个, 或4个区域
.每个区域定位一个单点触摸操作
.可以消除触摸点移动时产生的“鬼点”
.通过判断触摸进入/退出相应区域,可以从“鬼点”中分辨出真实点

使用特权

评论回复
renyaq| | 2019-2-15 12:32 | 显示全部楼层
自电容为什么存在鬼点,二互电容却不存在呢?

使用特权

评论回复
supernan| | 2019-2-15 12:35 | 显示全部楼层
这首先要搞懂鬼点是什么?鬼点是如何出现的?
当有两个点触摸屏幕时,X,Y方向分别能够产生两个信号凸起,但X和Y方向的两个信号的凸起并不能唯一确定两个手指在屏上的位置,事实上,X和Y方向的两个信号凸起可以分别对应两个点触摸的状态,它们分别位于一个矩形的两个对角上,如果这两个状态中的一个是真实的两点触摸,那么另外的两个点就被称之为“鬼点”。

知道了鬼点的由来,那么很容易知道鬼点是由于手指触摸产生的,而手指触摸影响自电容和互电容结果不同,这又涉及到什么是自电容,什么是互电容。

自电容是感应块相对地之间的电容,这个地在这里指的是电路的地,虽然这个地离感应块可能很近,也可能很远,但它总是存在的。当感应块上施加一个激励信号时,由于自电容的存在,将在感应块和地之间产生一个随激励信号变化的电场。
互电容是一个感应块与另一个感应块之间的电容,在一个感应块上施加一个激励信号时,由于互电容的存在,在另一个感应块上可以感应并接收到这个激励信号,接收到的信号的大小与相移与激励信号的频率和互电容的大小有关。
手指触摸感应块时对自电容和互电容各有什么影响呢?
当手指触摸感应块时相当于附加了一个手指电容,其自电容将增加,由于互电容当手指靠近或触摸触摸屏时,由于手指相当于一个导体,所以原来从发射感应块到接收感应块的电场或电力线中的部分转移到了手指上,这两个感应块之间的场强的减弱或电力线的减少相当于互电容的减少,因此,手指触摸感应块对自电容和互电容有截然不同的影响,自电容增加而互电容减少。

这就说明,当有手指接触时,增加的自电容影响占主要地位,而减少的互电容此时应该可以忽略,
这可能就是所说的互电容不存在鬼点的原因吧

使用特权

评论回复
supernan| | 2019-2-15 12:40 | 显示全部楼层
同一个问题,就复制过来了。。。。勿怪勿怪。。。

这首先要搞懂鬼点是什么?鬼点是如何出现的?
当有两个点触摸屏幕时,X,Y方向分别能够产生两个信号凸起,但X和Y方向的两个信号的凸起并不能唯一确定两个手指在屏上的位置,事实上,X和Y方向的两个信号凸起可以分别对应两个点触摸的状态,它们分别位于一个矩形的两个对角上,如果这两个状态中的一个是真实的两点触摸,那么另外的两个点就被称之为“鬼点”。

知道了鬼点的由来,那么很容易知道鬼点是由于手指触摸产生的,而手指触摸影响自电容和互电容结果不同,这又涉及到什么是自电容,什么是互电容。

自电容是感应块相对地之间的电容,这个地在这里指的是电路的地,虽然这个地离感应块可能很近,也可能很远,但它总是存在的。当感应块上施加一个激励信号时,由于自电容的存在,将在感应块和地之间产生一个随激励信号变化的电场。
互电容是一个感应块与另一个感应块之间的电容,在一个感应块上施加一个激励信号时,由于互电容的存在,在另一个感应块上可以感应并接收到这个激励信号,接收到的信号的大小与相移与激励信号的频率和互电容的大小有关。
手指触摸感应块时对自电容和互电容各有什么影响呢?
当手指触摸感应块时相当于附加了一个手指电容,其自电容将增加,由于互电容当手指靠近或触摸触摸屏时,由于手指相当于一个导体,所以原来从发射感应块到接收感应块的电场或电力线中的部分转移到了手指上,这两个感应块之间的场强的减弱或电力线的减少相当于互电容的减少,因此,手指触摸感应块对自电容和互电容有截然不同的影响,自电容增加而互电容减少。

这就说明,当有手指接触时,增加的自电容影响占主要地位,而减少的互电容此时应该可以忽略,
这可能就是所说的互电容不存在鬼点的原因吧

使用特权

评论回复
xxrs| | 2019-2-15 12:44 | 显示全部楼层

楼上说得好! 补充一点:
如果是一个10(排)X10(列)的屏,扫描一轮,用自电容方式是20次=10+10; 但用互电容方式扫描是10X10=100次.自电容方式是一排一排地扫, 而户电容是交叉点扫描. 所以互电容是通过增加扫描次数为代价来获得真正多触点识别性能的.

使用特权

评论回复
houcs| | 2019-2-15 12:48 | 显示全部楼层
手指在触摸屏上的定位使用质心法或者叫权重法.使用软件计算得到.

使用特权

评论回复
chuxh|  楼主 | 2019-2-15 12:51 | 显示全部楼层

质心法或者叫权重法,高等数学的内容啊。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

936

主题

11296

帖子

2

粉丝