在觸摸屏維修工作中,我們發(fā)現(xiàn)電阻式觸摸屏在嵌入式系統(tǒng)中用的較多,電阻式觸摸屏可分為四線、五線、七線等幾種,接下來,我們主要以wince觸摸屏為例,分析如何校準觸摸屏基準參數(shù)問題:
在我們順利完成驅動程序安裝以及各種功能就都已經(jīng)準備就緒了,現(xiàn)在就可以實際操作觸摸屏幕了。但一般來說,電阻式觸摸屏需要校準,也就是說在驅動啟動過程中mdd層要調(diào)用相應的ddsi函數(shù)來讀取注冊表中的校正數(shù)據(jù)校正觸摸屏。理想情況下,校準程序只要在嵌入式設備初次加電測試過程中運行一次就可以了,參考值會被存儲在非易失性存儲器中,以免讓用戶在以后的加電啟動期間再做校準。
不過,高質(zhì)量的觸摸屏驅動程序是應該要向用戶提供一種進入校準例程的途徑,從而在由于溫度漂移或其它因素造成校準不準確時進行重新校準。 在理想情況下,校正觸摸屏基準只需兩組原始數(shù)據(jù),即在屏幕對角讀取的最小和最大值。但在實際應用中,因為許多電阻式觸摸屏存在明顯的非線性,如果只在最小和最大值之間簡單的插入位置數(shù)值會導致驅動程序非常的不精確。因此,在wince中需要獲取多個校準點,常用的校準點數(shù)量為5個。
方法如下:
1、首先驅動程序在函數(shù)ddsitouchpanelgetdevicecaps 中設置校準點的個數(shù);
2、是系統(tǒng)在 touchdrivercalibrationpointget中獲取每個校準點的屏幕坐標;
3、是在屏幕界面的校準點坐標處顯示一個位置符號,用戶需要精確地在位置符號按下觸摸屏;
4、驅動程序通過touchpanelreadcalibrationpoint函數(shù)讀取相應的觸摸屏坐標值;
5、然后再開始下一個校準點,直到循環(huán)設定的次數(shù)后將采集到的觸摸屏坐標值和校準點屏幕坐標送到touchpanelsetcalibration函數(shù)中進行處理,該函數(shù)將產(chǎn)生校準基準參數(shù)。
校準完成之后,觸摸屏便可以開始正常的操作了。