WINCE触摸屏校准的问题求助

时间:2022-07-26 17:59:52
WINCE启动的时候,一直停在校准的画面。查看打印日志如下:
touchp: calibration Thread started
DdsiTouchPanelEnable-
DdsiTouchPanelEnable-!
TOUCH:ThrdPrio = 109, ThrdHighPrio = 1
                                      DdsiTouchPanelGetDeviceCaps+CalibrationThread+
touchp:try to open [HKLMhardwaredevicemap       ouch] key Success 

DdsiTouchPanelGetDeviceCaps-
touchp: Perform calibration!
MSIM: IM_ReadRegistry read KB 5
DdsiTouchPanelGetDeviceCaps+
DdsiTouchPanelGetDeviceCaps-
DdsiTouchPanelGetDeviceCaps+
TouchDriverCalibrationPointGet+
cDisplayWidth        :  320
cDisplayHeight       :  1E0
CalibrationRadiusX   :   20
CalibrationRadiusY   :   12
pTCP -> PointNumber  :    0
pTCP -> CalibrationX :  400
pTCP -> CalibrationY :  240
TouchDriverCalibrationPointGet-
DdsiTouchPanelGetDeviceCaps-
Explorer(V2.0) taskbar thread started.
NDISPWR:: Found adapter [SMSC91181]
StopUSBClock with operateMode=0, m_dwStatus=0x0
+(m_dwStatus & STATUS_WAIT_HOST_DISCONN_COMPLETE) == 0x00
ResetEndPoints
Session Request(0, 0)
+StopUSBClock
***###StopUSBClock:  EnableWakeupInterrupt(TRUE)
-StopUSBClock
+(m_timeout == DO_TRANSCEIVER_SUSPEND_TIMEOUT)
INTRUSB(0x0) Devctl(0x90)
PddGetTouchData+
PddGetTouchData-
X(0xDEA) Y(0xDD7)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-

看日志中有“touchp: Perform calibration!”

查看对应的代码。
 RETAILMSG(1, (TEXT("touchp: Perform calibration!\r\n")));
TouchCalibrate();
     RETAILMSG(1, (TEXT("touchp: Perform calibration Done!\r\n")));
好像函数TouchCalibrate()一直没有执行结束,因为无这个函数后面的打印信息“touchp: Perform calibration Done!\r\n”。
在代码中没有看到TouchCalibrate()的实现代码。
请问这个是什么原因?为什么一直停在触摸屏校准画面上呢?怎么解决?谢谢

8 个解决方案

#1


已经进入校准的画面,说明 TouchCalibrate() 函数已经执行

TouchCalibrate()的实现代码,MS没有开源,看不到的

#2


TouchCalibrate() 执行后,应该可以看到校准界面,点击校准成功后,才会退出的。

#3


很感谢你的回答。

目前在校准画面中我一直点击校准,但串口下只有如下打印:
PddGetTouchData+
PddGetTouchData-
X(0xDEA) Y(0xDD7)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDEC) Y(0xDD5)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDEB) Y(0xDD1)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDEA) Y(0xDD3)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDEC) Y(0xDDC)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDED) Y(0xDD9)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDE5) Y(0xDCD)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDE4) Y(0xDC8)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDD7) Y(0xDCF)

一直不能退出校准的画面。请问这个是什么原因?为何一直没有校准结束?

#4


我用的是7寸触摸屏。谢谢!

#5


你应该是触摸屏太大,导致抖动厉害,校准数据达不到邀求,所以在校准界面上一直无法完成。自然也就没有done的提示。

一种是采用电容屏,另一种采用专业ic。

不然在wince上很难在7寸屏上用电阻屏的。

#6


谢谢答复,我目前用的是7寸电阻屏。

#7


降低校准的精度,

#8


如何降低精度?怎么改?

#1


已经进入校准的画面,说明 TouchCalibrate() 函数已经执行

TouchCalibrate()的实现代码,MS没有开源,看不到的

#2


TouchCalibrate() 执行后,应该可以看到校准界面,点击校准成功后,才会退出的。

#3


很感谢你的回答。

目前在校准画面中我一直点击校准,但串口下只有如下打印:
PddGetTouchData+
PddGetTouchData-
X(0xDEA) Y(0xDD7)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDEC) Y(0xDD5)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDEB) Y(0xDD1)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDEA) Y(0xDD3)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDEC) Y(0xDDC)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDED) Y(0xDD9)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDE5) Y(0xDCD)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDE4) Y(0xDC8)
DdsiTouchPanelGetPoint+
DdsiTouchPanelGetPoint+
PddGetTouchData+
PddGetTouchData-
X(0xDD7) Y(0xDCF)

一直不能退出校准的画面。请问这个是什么原因?为何一直没有校准结束?

#4


我用的是7寸触摸屏。谢谢!

#5


你应该是触摸屏太大,导致抖动厉害,校准数据达不到邀求,所以在校准界面上一直无法完成。自然也就没有done的提示。

一种是采用电容屏,另一种采用专业ic。

不然在wince上很难在7寸屏上用电阻屏的。

#6


谢谢答复,我目前用的是7寸电阻屏。

#7


降低校准的精度,

#8


如何降低精度?怎么改?