<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    Rss & SiteMap

    曙海教育集團論壇 http://www.bjzhda.cn

    曙海教育集團論壇
    共1 條記錄, 每頁顯示 10 條, 頁簽: [1]
    [瀏覽完整版]

    標題:WinCE5.0的USB Camera流接口驅動開發

    1樓
    wangxinxin 發表于:2010-11-26 10:22:58
    引 言   

            WinCE5.0是一個32位、多任務、多線程的實時嵌入式操作系統。USB Camera 以其良好的性能和低廉的價格得到廣泛的應用,同時因其靈活、方便的特性,易于集成到嵌入式系統中。

           通過采用USB Camera可以在WinCE5.0下方便地得到實時圖像。但是由于嵌入式硬件環境的多樣性以及WinCE5.0對USB設備驅動開發只提供了一些底層支持,攝像頭廠商尚未提供WinCE5.0下USB攝像頭的驅動,因此開發出WinCE5.0下USB攝像頭驅動具有實際的意義和價值。本文正是針對這一情況,對WinCE5.0下USB設備驅動開發進行研究,并設計出基于流接口驅動模型的USB攝像頭驅動程序,F在已經開發出來的驅動適用于Zc030x PLUS這一系列的攝像頭。Samstmg 2410為實驗的硬件平臺。

    圖片點擊可在新窗口打開查看


          1 WinCE5.0下USB總線驅動框架
       

           USB系統由USB主機、一個或多個USB設備和物理總線組成。主機上又分兩層:較高的包含USB設備驅動程序的軟件層和主機控制器硬件層,也稱作“適配層”。主機的主要任務是控制對USB設備的雙向數據傳輸。物理總線是一組USB電纜,用來將控制器和外圍設備連接起來。WinCE5.0的USB系統軟件由兩層組成:USB設備驅動程序層和底層的由WinCE5.0實現的USB函數層。

          USB設備驅動程序使用USB函數來建立與它們所控制設備的連接,并對這些設備進行配置和通信。較低的USB函數層本身又由兩部分組成——較高的通用串行總線驅動程序(USBD)模塊和較低的主控制器驅動程序(HCD)模塊。HCD提供了抽象的主機控制器,且對主機控制器所見到的USB系統的數據傳輸進行抽象。USBD提供一個抽象的設備,且對USBD客戶和USB設備功能部件之間的數據傳輸進行抽象。USB設備驅動程序使用USBD接口函數與外圍設備進行通信。   

          IHV和USB設備制造商利用USBD提供的函數來實現USB設備的驅動程序。OEM負責給基于WinCE的平臺提供HCD模塊,這樣相應的硬件才能與USBD模塊進行交互。圖1說明了與主機的USB硬件和外圍設備相對應的軟件的各個層。

          2 WinCE5.0下流驅動模型   

          基于WinCE5.0平臺的兩種專用的驅動模型為:本機設備驅動程序和流接口驅動程序。本機設備驅動程序適合于集成到WinCE 5.0 平臺的設備;而后者則是一般類型的設備驅動程序,適用于大部分外圍設備,如調制解調器、打印機等。對大多數USB外圍設備來說,適用于采用流接口驅動程序模型來開發驅動程序。   

          流接口驅動程序是一種可以定制接口的驅動模型,一般由設備管理器負責管理。它把設備管理器和應用程序的命令轉換成所控設備的適當動作所需信息。流接口驅動程序需要實現一組固定的流接口函數,供給WinCE5.0系統內核使用。

    圖片點擊可在新窗口打開查看

           USB設備的流接口驅動程序和WinCE5.0系統其他部件間的關系如圖2所示。流接口驅動程序通過系統提供的文件系統API與應用程序交互;而系統通過設備管理器完成對流接口驅動程序的加載、卸載等管理工作;流接口驅動程序通過調用USBD模塊提供的接口函數實現與底層USB設備通信。

           本文使用的流接口函數方法如表1所列。

    圖片點擊可在新窗口打開查看

          USB設備驅動程序必須輸出的函數有:
       

            ①USBDeviecAttach()。當USB設備連接到計算機上時,USBD模塊就會調用此函數。這個函數主要用于初始化USB設備,取得USB設備信息,配置USB設備,并且申請必需的資源。
            ②USBInstallDriver ()。主要用于創建一個驅動程序加載所需的注冊表信息,例如讀/寫超時、設備名稱等。
            ③USBUninstallDriver ()。主要用于釋放驅動程序所占用的資源,以及刪除UsbInstallDriver ()函數創建的注冊表等。   

           上述3個函數接口是所有的USB驅動程序必須提供的,缺一不可。   

           另外較為重要的是USB設備驅動程序的注冊表配置。一般的USB設備驅動程序的注冊表配置在[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\口]下,每個驅動程序的子鍵都有Group 1_ID\Group2_ID\Group3_ID\DriverName 格式,設備的子鍵由供應商、設備類和協議信息通過下劃線組成。表2列出了允許的組合。

    圖片點擊可在新窗口打開查看

    共1 條記錄, 每頁顯示 10 條, 頁簽: [1]

    Copyright © 2000 - 2009 曙海教育集團
    Powered By 曙海教育集團 Version 2.2
    Processed in .01367 s, 2 queries.
    主站蜘蛛池模板: 黑人大长吊大战中国人妻| 久热这里有精品| 精品国产一区二区三区久久 | 免费va人成视频网站全| 色狠狠久久av五月综合| 国产综合色在线视频区| 中文字幕乱码无码人妻系列蜜桃| 日本高清黄色片| 亚洲欧美色中文字幕在线| 看全色黄大色黄大片大学生| 国产在线精品一区二区| 91精品国产麻豆福利在线| 奇米精品一区二区三区在| 久久久精品波多野结衣| 日韩美女在线视频网站免费观看| 亚洲精品无码高潮喷水在线| 福利视频网站导航| 国产三级精品三级| 青娱乐欧美视频| 国产精品无码久久四虎| www亚洲成人| 性色av一区二区三区| 久久综合九色综合欧美就去吻| 欧美另类视频videosbest18| 成人性生交大片免费视频| 亚洲国产成人久久综合碰碰动漫3d| 特级毛片aaaaaa蜜桃| 国产AV无码专区亚洲AV手机麻豆| 鲁啊鲁在线观看| 国产精品水嫩水嫩| xxxxhd93| 尤物视频在线播放| 久久国产乱子伦精品免费看| 最好的中文字幕2018免费视频| 亚洲精品国产精品乱码视色| 猫咪av成人永久网站在线观看| 国产v日韩v欧美v精品专区| 菠萝菠萝蜜视频在线| 国产欧美日韩va| 91中文字幕在线| 国产美女无遮挡免费视频|