USB及其設備開發
5 USB典型應用
理論上講,USB技術由3部分組成:具備USB接口的Pc系統、能夠支持USB的系統軟件和使用UsB接口的設備。USB需要主機硬件、操作系統和外設3個方面的支持才能工作。目前主板一般都采用支持USB功能的控制芯片組,而且也安裝了USB接口插槽。Windows 98及以上版本的操作系統都內置了對USB接口的支持(但WindowsNT不支持USB)。在操作系統擁有了對USB設備的支持后,安裝USB設備以及相應的驅動程序。目前,USB已經在Pc機的多種多卜設上得到應用,從最初的打印機、掃描儀,發展到攝像頭、數碼相機、鼠標、鍵盤、硬盤、Modem、U盤、手機等。板載接口也從早期的2個增加至4個接El,板上一般還有兩個擴展針接口,同期出現了前置接口和USB Hub。USB系統的典型應用如圖2所示。
在圖2所示系統中,顯示器、Audio,Modem皆為全速設備,鍵盤、鼠標為低速設備。
6 USB端口軟件結構
USB端口軟件結構如圖3所示。
(1)USB接El驅動程序
USB接口驅動程序需實現以下功能:
①USB接El器件的初始化。
②計算上層數據包的校驗和,發送上層的數據包。
③發送SOF幀。
④接收從USB接口傳送來的數據,并檢查數據的有
效性。
⑤將接收到的數據送往上層。
(2)USB協議棧驅動程序
USB協議棧驅動程序需實現以下功能:
①提供與設備驅動程序的接El。
②讀取并解析USB設備描述符,配置描述符。
③為USB設備分配惟一的地址。
④使用默認的配置來配置設備。
⑤支持基本的USB命令請求。
⑥連接設備與相應的驅動程序。
⑦轉發設備驅動程序的數據包。
(3)設備驅動程序
設備驅動程序需實現以下功能:
①提供與應用程序的接口。
②讀取并解析USB設備特有的描述符,獲得設備提供的傳輸通道。
③發送設備特有的和基本的USB命令請求。
④通過設備提供的傳輸通道與設備進行數據傳輸。
⑤通過USB命令請求重新配置設備。
7 USB設備的開發
(1)需要一臺支持USB PC如果要開發WDM驅動程序則需要一臺有以下配置的PC:
(2)編寫USB Device的規格書。
(3)購買相應的評估板和評估軟件,并找到盡可能多的實例源程序代碼,然后需要有MCU的程序編譯器。
(4)購買其他在開發中要用到的設備,如總線分析儀USB Hubs,競爭者的相應USB設備,以及USB鼠標、USB鍵盤等。
(5)編寫或改寫USB驅動程序MCU,固件程序和客戶程序代碼。
(6)參加USB遵從試驗在不同的系統與配置驗iiEUSB設備。
8 驅動程序編寫
USB的驅動程序和以往直接跟硬件打交道的Windows 95的VXD方式驅動程序不同,他是WDM類型的Windows下的USB軟件,USB軟件總體框圖如圖4所示。
9 結 語
觀USB技術的整個發展過程,從誕生到成為絕大多數PC外設的標準接口,在提高速度后應用到幾乎所有PC外設領域,USB為接E1種類繁多的存儲媒介與主機之間提供了方便可靠的連接。USB應用與開發也將不斷發展,不斷完善。
評論