触摸屏重启后出现了偏移现象

paul85 2010-04-20 11:51:44
在校准后触摸屏可以正常工作。点击A点,显示上也是A点反应。但重启后点击A点,B点发生反应。针对这种触摸屏发生偏移的现象。我查看了一下四根数据线波形,与数据手册上的波形一致。在校准时我也查看了注册表,校准信息确实写入了注册表中,不知道问题发生在哪个环节?请大家多多讨论,多多指点。
...全文
687 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
paul85 2010-04-22
  • 打赏
  • 举报
回复
可以确定是硬件问题 ,但是没有找到问题怎么解决。所以只好通过软件手段来解决它。我的做法是在上电时读取X,Y轴的ADC值,分别记为X0,Y0。每次采样的结果都减去X0,Y0。触摸屏校准时也用这个差值去校准,就可以解决问题了。后面要抽时间解决一下硬件问题,才是根本。这里就现结贴了。
paul85 2010-04-21
  • 打赏
  • 举报
回复
谢谢sunrain_hjb,不过感觉我的接法和帖子上的说法不一样。我的接法就是帖子上的第一个图,第二三个图我没有用到。检测x,y坐标,我用的接法都是第一个图。没有下面图说得那么复杂。我是用手动的方式。三星的数据手册上就是这样的:给XM,XP分别接上电源和地,测YM或者YP。再给YM,YP接上电源和地,测XM或者XP。不知道我说得对不对?
sunrain_hjb 2010-04-21
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 paul85 的回复:]
可能描述得不是很清晰。每次启动后,我都按住触摸屏的同一点。然后通过串口输出ADC的采样值,结果差别比较大,并且每次的差别都是不一样的。不知道是什么问题。这完全是底层的问题,和注册表什么的完全挨不上的。
[/Quote]
对于电阻式触摸屏,这个问题是难以避免的,所以需要在底层做一些处理。
http://www.cnblogs.com/we-hjb/archive/2009/12/16/1626020.html
看看这里,希望有所启发。
paul85 2010-04-21
  • 打赏
  • 举报
回复
可能描述得不是很清晰。每次启动后,我都按住触摸屏的同一点。然后通过串口输出ADC的采样值,结果差别比较大,并且每次的差别都是不一样的。不知道是什么问题。这完全是底层的问题,和注册表什么的完全挨不上的。
paul85 2010-04-21
  • 打赏
  • 举报
回复
仔细看一下触摸屏驱动吧,有些是在驱动中做的坐标转换,可能重启以后还是用的这个。

个人感觉最好还是让WinCE系统自己来处理校准和坐标转化的事情,可以省去很多不必要的麻烦。

sunrain_hjb兄,你说得对,微软在这一块绝对是没有问题的。
我把每次采样回来的值通过串口显示到超级终端上,发现AD采样值在重启开发板后有变动,且变化不规律。本来怀疑是参考电压不稳造成的,我外接了参考电压,结果还是会出现问题,外接的参考电压纹波的峰峰值只有10mV不到。不该是参考电压出现问题。我现在可以确定问题出现在AD采样这一块,就是在最底层,但是还没有找到具体在什么地方。
nikiforenko11 2010-04-21
  • 打赏
  • 举报
回复
学习了
sunrain_hjb 2010-04-21
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 paul85 的回复:]
我们的应用不需要检测压力大小,另外我的硬件也是固定好的,不好修改了。需要解决的问题就是AD采样的不固定性。
[/Quote]
那只有通过软件的方法过滤掉无效数据了。
paul85 2010-04-21
  • 打赏
  • 举报
回复
我们的应用不需要检测压力大小,另外我的硬件也是固定好的,不好修改了。需要解决的问题就是AD采样的不固定性。
sunrain_hjb 2010-04-21
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 paul85 的回复:]
谢谢sunrain_hjb,不过感觉我的接法和帖子上的说法不一样。我的接法就是帖子上的第一个图,第二三个图我没有用到。检测x,y坐标,我用的接法都是第一个图。没有下面图说得那么复杂。我是用手动的方式。三星的数据手册上就是这样的:给XM,XP分别接上电源和地,测YM或者YP。再给YM,YP接上电源和地,测XM或者XP。不知道我说得对不对?
[/Quote]
这用做是可以的,但不能得到压力的大小,所以在某些状态下误差就很大。

如果采用文中所说的方法,可以得到压力大小,从而判断获取的值是否可靠有效,防止抖动或跳笔。
domworldjohn 2010-04-20
  • 打赏
  • 举报
回复
你可以在校准触摸屏后,查看注册表的数据,之后把数据放入操作系统的驱动,将触摸屏锁定,以后再也不会发生偏移
91program 2010-04-20
  • 打赏
  • 举报
回复
可能是触屏的校准参数没有保存

要实现保存,需HIVE型注册表支持
guetcw 2010-04-20
  • 打赏
  • 举报
回复
ADC的基准电压是否稳定
sunrain_hjb 2010-04-20
  • 打赏
  • 举报
回复
重启后注册表中的校准信息还是正确的吗?

你的系统支持HIVE么?如果支持,在校准完注册表后还需要挂起一下再重启。
sunrain_hjb 2010-04-20
  • 打赏
  • 举报
回复
仔细看一下触摸屏驱动吧,有些是在驱动中做的坐标转换,可能重启以后还是用的这个。

个人感觉最好还是让WinCE系统自己来处理校准和坐标转化的事情,可以省去很多不必要的麻烦。
paul85 2010-04-20
  • 打赏
  • 举报
回复
gooogleman adc的供电脚上的交流信号峰峰值在100MV以内,个人认为问题不大 。
sunrain_hjb 系统你每次启动后的偏差都不一样,感觉有时候接近准确的值,有时候偏差比较大。不知道系统到底读取了什么校验值。
benbentobecow 系统中并没有找到读取相应注册表信息的源码 ,不知道能否具体一点?
paul85 2010-04-20
  • 打赏
  • 举报
回复
gooogleman adc的供电脚上的交流信号峰峰值在100MV以内,个人认为问题不大 。
sunrain_hjb 系统你每次启动后的偏差都不一样,感觉有时候接近准确的值,有时候偏差比较大。不知道系统到底读取了什么校验值。
benbentobecow 系统中并没有找到读取相应注册表信息的源码 ,不知道能否具体一点?
sunrain_hjb 2010-04-20
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 paul85 的回复:]
sunrain_hjb,测试了一下,不关闭时不会出现问题。不知道是何原因。
[/Quote]

如果楼主确认系统已经实现了HIVE,并确定校准后的信息也保存起来了。

只要不重启,就一直没有问题的话,说明硬件问题的可能性很小。

重启后问题必现,说明系统没有用你校准后的数据。
benbentobecow 2010-04-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 domworldjohn 的回复:]
你可以在校准触摸屏后,查看注册表的数据,之后把数据放入操作系统的驱动,将触摸屏锁定,以后再也不会发生偏移
[/Quote]
这样应该可以解决你的问题
gooogleman 2010-04-20
  • 打赏
  • 举报
回复
电源不稳定的肯能性比较大!
paul85 2010-04-20
  • 打赏
  • 举报
回复
刚才输入法出了点问题。我的hive是正常的。校验后的信息保存下来了,且重启后还在那儿。
加载更多回复(6)

19,503

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧