<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于嵌入式的故障診斷專家系統(tǒng)驅動程序設計

          基于嵌入式的故障診斷專家系統(tǒng)驅動程序設計

          作者: 時間:2010-09-10 來源:網(wǎ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 觸摸屏
          中,為了方便用戶輸入數(shù)據(jù),進行方便的人機交互,觸摸屏是必不可少。觸摸屏按技術原理分為:電熔電感觸摸屏、紅外線觸摸屏、電阻式觸摸屏、矢量壓力傳感式觸摸屏等。S3C2410的觸摸屏采用的是電阻式觸摸屏。S3C2410支持觸摸屏接口,它由一個觸摸屏面板,四個外部晶體管,一個外部電源,通道AIN[7]及通道AIN[5]等組成,觸摸屏接口如圖l所示。主要的設計流程如圖2所示。

          本文引用地址:http://www.ex-cimer.com/article/151575.htm


          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();