開發適用於 USB 裝置的 Windows 用戶端驅動程式概觀
本文說明 Windows 作業系統中的通用序列總線 (USB) 支援,讓您可以開發可與 Windows 互通的 USB 設備驅動器。
USB 裝置是透過單一埠連線到電腦的周邊設備,例如滑鼠裝置和鍵盤。 USB 用戶端驅動程式是安裝在與硬體通訊以讓裝置運作的電腦上的軟體。 如果裝置屬於Microsoft支援的裝置類別,Windows 會載入裝置的其中一個 Microsoft提供的 USB 驅動程式 (現成類別驅動程式)。 否則,硬體製造商或第三方廠商必須提供自定義用戶端驅動程式。 使用者會在 Windows 第一次偵測到裝置時安裝裝置的用戶端驅動程式。 安裝成功之後,Windows 會在每次連接裝置時載入客戶端驅動程式,並在裝置與主計算機中斷連結時卸除驅動程式。
您可以使用 Windows 驅動程式架構 (WDF) 或 Windows 驅動程式模型 (WDM) 來開發 USB 裝置的自訂用戶端驅動程式。 大部分的用戶端驅動程式不會直接與硬體通訊,而是將其要求傳送至Microsoft提供的 USB 驅動程式堆棧,讓硬體抽象層 (HAL) 函式呼叫將客戶端驅動程式的要求傳送至硬體。 本節中的主題描述客戶端驅動程式可以傳送的一般要求,以及用戶端驅動程序必須呼叫的裝置驅動程式介面 (DIS)來建立這些要求。
開發人員物件
USB 裝置的用戶端驅動程式是 WDF 或 WDM 驅動程式,可透過 USB 驅動程式堆疊所公開的 DIS 與裝置通訊。 本節適用於熟悉 WDM 的 C/C++程式設計人員。 使用本節之前,您應該先瞭解基本的驅動程序開發。 如需詳細資訊,請參閱 開始使用 Windows 上的驅動程式。 針對WDF驅動程式,用戶端驅動程式可以使用內核模式驅動程序架構 (KMDF) 或使用者模式驅動程序架構 (UMDF) 介面,專為使用 USB 目標而設計。 如需USB特定介面的詳細資訊,請參閱 WDF USB 參考 和 UMDF USB I/O 目標介面。
開發工具
Windows 驅動程式套件 (WDK) 包含驅動程式開發所需的資源,例如標頭、連結庫、工具和範例。
USB 程式設計參考
提供 I/O 要求的規格、支援例程、結構和 USB 用戶端驅動程式所使用的介面。 這些例程和相關數據結構定義於WDK標頭中。
USB 驅動程式範例
使用這些範例來開始使用USB用戶端驅動程式程序設計。
- Usbsamp 一般 USB 驅動程式
- 適用於 OSR USB-FX2 的 KMDF 函式驅動程式範例
- 適用於 OSR USB-FX2 的 UMDF 函式驅動程序範例 (UMDF 第 1 版)
- OSR USB-FX2 的範例函式驅動程式 (UMDF 第 2 版)
相關標準和規格
您可以從通用序列總線文件庫網站下載官方 USB 規格。 此網站包含各種通用序列總線規格修訂的連結。
檔區段
開始使用 USB 用戶端驅動程式開發
介紹USB驅動程序開發。 提供選擇最適合為裝置提供 USB 驅動程式之模型的相關信息。 使用 Visual Studio 隨附的 USB Microsoft 範本,撰寫、建置及安裝您的第一個基本架構使用者模式和內核模式 USB 驅動程式。Windows 中的 USB 主機端驅動程式
提供 USB 驅動程式堆疊架構的概觀。關於 USB 封鎖要求 (URB)
瞭解客戶端驅動程式如何建置稱為 USB 要求區塊 (URB) 的可變長度數據結構,以將要求提交至 USB 驅動程式堆疊。USB 描述元
瞭解客戶端驅動程式如何建置稱為 USB 要求區塊 (URB) 的可變長度數據結構,以將要求提交至 USB 驅動程式堆疊。在USB驅動程式中選取USB組態
裝置設定是指客戶端驅動程序執行的工作,以選取每個介面中的USB組態和替代介面。 區段會顯示選取 USB 組態所需的方法呼叫。在 USB 用戶端驅動程式中傳送 USB 資料傳輸
描述 USB 管道、I/O 要求的 URI,以及用戶端驅動程式如何使用設備驅動器介面 (DIS) 來將資料傳送至 USB 裝置及從 USB 裝置傳輸數據。在 USB 用戶端驅動程式中實作電源管理
使用符合通用序列總線 (USB) 規格的 USB 裝置電源管理功能,具有豐富的複雜電源管理功能。