WinCE觸摸屏驅(qū)動開發(fā)

WinCE觸摸屏驅(qū)動開發(fā)

ID:40572333

大小:53.50 KB

頁數(shù):10頁

時間:2019-08-04

WinCE觸摸屏驅(qū)動開發(fā)_第1頁
WinCE觸摸屏驅(qū)動開發(fā)_第2頁
WinCE觸摸屏驅(qū)動開發(fā)_第3頁
WinCE觸摸屏驅(qū)動開發(fā)_第4頁
WinCE觸摸屏驅(qū)動開發(fā)_第5頁
資源描述:

《WinCE觸摸屏驅(qū)動開發(fā)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、WinCE觸摸屏驅(qū)動開發(fā)上一篇/下一篇?2009-06-3015:41:26查看(188)/評論(1)/評分(0/0)觸摸屏驅(qū)動開發(fā)1.觸摸屏驅(qū)動程序的模型1.1分層觸摸屏驅(qū)動層序結(jié)構(gòu)本觸摸屏驅(qū)動采用那個分層驅(qū)動程序結(jié)構(gòu),其驅(qū)動模型如下圖所示,這種結(jié)構(gòu)將驅(qū)動程序代碼區(qū)分為上層模型設(shè)備驅(qū)動層(MDD),下層是依賴平臺的驅(qū)動層(PDD)。其中MDD層通常無需修改就可以直接使用,改部分提供面向GWES的DDI的接口,而MDD通過指定的DDSI函數(shù)接口調(diào)用PDD,這就是我們通常驅(qū)動要實現(xiàn)的部分。PDD部分和MDD部分除了DDSI函數(shù)集接口外,還要實現(xiàn)一些指定的變量的定義或變量初始

2、化動作(比如,gIntrTouch和gIntrTouchChanged在PDD層定義,但主要在MDD層使用。),也就是說MDD層和PDD層之間并不一定是以嚴格的分層模型來實現(xiàn)的,有時候也要通過共享變量的方式來完成交互。1.2DDI函數(shù)集(MDD層)TouchPanelPowerHandler(BOOLboff)TouchScreen的電源管理函數(shù),boff:TRUE表示關(guān)閉電源,F(xiàn)ALSE表示打開電源,其只是調(diào)用DdsiTouchPanelPowerHandler()函數(shù),該函數(shù)在進入或退出poweroff狀態(tài)時產(chǎn)生。TouchPanelCalibrationAPoint

3、()該函數(shù)用于校準輸入的觸摸屏坐標,把觸摸屏坐標轉(zhuǎn)換為顯示坐標,利用了公式Sx=A1*Tx+B1*Ty+C和Sy=A2*Tx+B2*Ty+C2。TouchPanelReadCalibrationPoint()在執(zhí)行觸摸屏校準程序時,用這個函數(shù)獲得在當前校準點的十字形上點擊的觸摸屏坐標。TouchPanelReadCalibrationAbord()該函數(shù)在校準取消時被調(diào)用(在觸摸屏校準程序運行過程中取消校準),僅僅設(shè)置狀態(tài)位和事件后返回。TouchPanelDisable()禁用觸摸屏(touchpanel)設(shè)備,該函數(shù)關(guān)閉ISR,停止中斷和注銷事件及其他同步手段,此函數(shù)

4、調(diào)用了DdsiTouchPanelDisable()函數(shù)。TouchPanelEnable(PFN_TOUCH_PANEL_CALLBACK???pfnCallback)PfnCallback是指向處理touchpanel事件的回調(diào)函數(shù),該函數(shù)的執(zhí)行動作:⑴創(chuàng)建事件hTouchPanelEvent和hCalibrationSampleAvailable,其中當觸筆按下或抬起,或者定時器中斷時會觸發(fā)hTouchPanelEvent事件,而在校準狀態(tài)下當有校準數(shù)據(jù)輸入時會觸發(fā)hCalibrationSampleAvailable事件。⑵初始化臨界區(qū),初始化所需的觸摸屏中斷gI

5、ntrTouch和gIntrTouchChanged,并且把它們關(guān)聯(lián)到事件hTouchPanelEvent中。⑶創(chuàng)建ISTTouchPanelpISR,并設(shè)定其優(yōu)先級。TouchPanelSetCalibration()該函數(shù)通過運行觸摸屏校準程序時的校準動作獲得顯示坐標(Sx,Sy)和觸筆在十字形上按下的觸摸坐標(Tx,Ty)用于計算校準參數(shù)A1,B1,C1和A2,B2,C2。TouchPanelGetDeviceCaps()用于查詢觸摸屏設(shè)備支持的具體功能,通過DDSI函數(shù)查詢相應(yīng)的信息,當查詢屏幕坐標信息時保存屏幕信息,供后面程序計算校準參數(shù)所用。TouchPane

6、lSetMode()用于設(shè)置觸摸屏的工作模式(采用低采樣率還是高采樣率),當設(shè)置IST優(yōu)先級時直接通過內(nèi)核API來完成,而直接將其他設(shè)置交給DdsiTouchPanelSetMode()函數(shù)來處理。1.3DDSI函數(shù)集(PDD層)DdsiTouchPanelGetDeviceCaps(INTiIndex,LPVOIDlpOutput)查詢touchpanel設(shè)備的相關(guān)信息。IIndex:查詢的索引值,其取值如下:TPDC_SAMPLE_RATE_ID:查詢采樣率信息。TPDC_CALIBRATION_POINT_COUNT_ID:查詢用于校驗的點的個數(shù)。TPDC_CALI

7、BRATION_POINT_ID:查詢需要校驗的點的坐標。LpOutput:根據(jù)iIndex值分別指向相關(guān)的信息。DdsiTouchPanelSetMode()設(shè)置TouchPanel工作模式。iIndex:模式索引TPSM_SAMPLERATE_HIGH_ID:高采樣率TPSM_SAMPLERATE_LOW_ID:低采樣率lpInput:指向包含相關(guān)信息的內(nèi)存DdsiTouchPanelEnable()該函數(shù)所執(zhí)行的動作:⑴為需要用到的I/O,ADC,PWM和INT寄存器分配內(nèi)存空間。⑵配置觸摸屏控制器、中斷控制器和PWM的

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。