基于嵌入式的故障診斷專家系統(tǒng)驅動程序設計
2.2 Windows CE.Net的驅動模型
Windows CE.Net所有驅動都以動態(tài)鏈接庫(DLL)的形式存在,在驅動的實現(xiàn)過程中可以調(diào)用Windows CE.Net支持的所有標準API函數(shù)。
Windows CE.Net的驅動程序有2種模型:本機設備驅動程序和流接口設備驅動程序。
1)本機設備驅動 在Windows CE.Net中.通用LED驅動、電源驅動、顯示驅動、鍵盤驅動等都可以用本機設備驅動來開發(fā)。微軟提供了定制接口的方式來支持內(nèi)部設備驅動程序,這意味著絕大多數(shù)開發(fā)人員不必大量地編寫本機設備驅動代碼。但把Windows CE.Net定制到新平臺的原始設備制造商(OEM)除外,它們可以創(chuàng)建自己的本機設備驅動程序到新的平臺。通常,當Windows CE.Net系統(tǒng)啟動時,本機設備驅動程序就被加載到系統(tǒng)的內(nèi)存中。
2)流接口驅動程序 在Windows CE.Net中,流接口驅動程序以DLL形式存在,是運行在用戶模式下的動態(tài)連接庫,由一個叫做設備管理程序的特殊應用程序加載、管理和卸載。與具有單獨目的接口的內(nèi)部設備驅動程序相比,所有流接口驅動程序使用同一個接口并調(diào)用同一個函數(shù)集——流接口函數(shù)。流接口驅動程序的主要任務是把外設的使用傳遞給應用程序,這是通過把設備表示為文件系統(tǒng)的一個特殊文件實現(xiàn)的。在流接口驅動程序模型中,應用程序通過文件系統(tǒng)的API函數(shù)調(diào)用流接口函數(shù),然后由流接口驅動程序調(diào)用本機驅動或者通過設備管理器與系統(tǒng)內(nèi)核或外圍設備打交道。每個流接口驅動程序必須實現(xiàn)一組標準的函數(shù),用來完成標準的文件I/O函數(shù)和電源管理函數(shù),這些函數(shù)提供給Windows CE.Net操作系統(tǒng)的內(nèi)核使用。一般,這些函數(shù)被稱為流接口驅動程序的DLL接口。
3 驅動程序的開發(fā)
在Windows CE嵌入式系統(tǒng)的平臺開發(fā)中,設備驅動程序的開發(fā)是其很重要的一部分,它們用于驅動嵌入式系統(tǒng)硬件平臺上的各個設備接口。下面針對在項目中完成的幾個主要的設備驅動,來了解一下具體設備驅動程序的開發(fā)過程。
3.1 觸摸屏
在嵌入式故障診斷專家系統(tǒng)中,為了方便用戶輸入數(shù)據(jù),進行方便的人機交互,觸摸屏是必不可少。觸摸屏按技術原理分為:電熔電感觸摸屏、紅外線觸摸屏、電阻式觸摸屏、矢量壓力傳感式觸摸屏等。S3C2410的觸摸屏采用的是電阻式觸摸屏。S3C2410支持觸摸屏接口,它由一個觸摸屏面板,四個外部晶體管,一個外部電源,通道AIN[7]及通道AIN[5]等組成,觸摸屏接口如圖l所示。主要的設計流程如圖2所示。本文引用地址:http://www.ex-cimer.com/article/151575.htm
評論