Chinaunix首页 | 论坛 | 博客
  • 博客访问: 931206
  • 博文数量: 96
  • 博客积分: 10071
  • 博客等级: 上将
  • 技术积分: 1118
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-20 17:54
文章分类

全部博文(96)

文章存档

2011年(3)

2010年(3)

2009年(29)

2008年(54)

2007年(7)

分类: WINDOWS

2008-08-08 10:03:10

WinCE下触摸屏的校验以及数据保存


相同型号的LCD触摸屏,它们的校验数值也不是完全一样的。所以,每当用户拿到一个LCD触摸屏时,需要重新使用触摸屏校验程序校验这个触摸屏,并把得到的校验数据永久保存到系统里面,这样每次系统重启时,不需要再次校验,就可以使用触摸笔很准确的点击目标位置。

在WinCE操作系统下,触摸屏的校验过程是这样的:用鼠标点击WinCE桌面图标【我的电脑】,然后在出现的窗口中点击图标【控制面板】,然后点击【笔针】,在弹出的窗口中,选择【校准】标签页,点击“再校准”按钮,如下图

在出现的校验画面中,可以看到中心位置有一个“+”号,我们需要用触摸笔点击这个加号的中心位置,记住点击时,需要把触摸笔贴在这个中心位置2,3秒时 间,再提起来,否则,如果轻触的时间太快,触摸程序可能捕捉不到用户的动作。当中心位置校验成功后,加号会移到左上角,用户需要跟着加号的移动,点击加号 的中心位置,以最终完成整个校验过程。完成校验后,点击键盘回车键或鼠标左键确认校验结果。

当校验结果被确认后,校验数据就会被保存到WinCE的注册表当中,但是这并不是永久保存,因为数据并未被烧写到Flash中,解决的办法是,将我 们获取的校验数据加载到PB的平台的注册表中,然后重新编译平台,生成包含触摸屏校验注册信息的NK.nb0映像。具体做法如下:

通过Microsoft ActiveSync工具连接目标硬件平台

然后在PB的tools菜单中点击“Remote Registry Editor”以运行远程注册表编辑工具查看WinCE的注册表内容。
在注册表编辑器中打开[HKEY_LOCAL_MACHINE\Hardware\DeviceMap\Touch]键,就可以看到触摸屏的校验数值,如下图

 

上图中的“CalibrationData”键值就是触摸屏的校验值,将这个值复制一下,然后打开PB的平台的project.reg
文件,加入如下的触摸屏注册信息,其中"CalibrationData"=之后的值就是上面我们复制的触摸屏校验值。

[HKEY_LOCAL_MACHINE\Hardware\DeviceMap\Touch]
     "CalibrationData"="1484,1168 584,536 568,1820 2356,1812 2356,488"

添加后的结果如下图黑色区域所示:

 

添加完毕后,保存, 重新编译平台,生成新的映像文件,运行映像,就可以看到触摸屏校验信息已经在注册表里了。

先记录一下我的UTU2440-F的数值:508,636 912,1172 112,1196 92,88 896,84

6400下面的;LTP700

"CalibrationData"="505,492 820,745 813,240 191,235 187,741"


阅读(3625) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~