在 USB 用戶端驅動程式中傳送 USB 數據傳輸的概觀
本節中的文章提供 I/O 要求的 USB 管道和 URI 相關信息,並說明用戶端驅動程式如何使用設備驅動器介面, (DIS) ,在 USB 裝置上傳輸數據。
每次在主機控制器與 USB 裝置之間行動數據時,都會進行傳輸。 一般而言,USB 傳輸可廣泛分類為控制傳輸和數據傳輸。 所有 USB 裝置都必須支援控制傳輸,並可支援資料傳輸的端點。 每種類型的傳輸都會與裝置) 中的緩衝區 (USB 端點 類型相關聯。 控制傳輸會與預設端點相關聯,而數據傳輸會使用單向端點。 數據傳輸類型使用中斷、大量和等時端點。 USB 驅動程式堆疊會為裝置支援的每個端點建立稱為 管道 的通道。 管道的一端是裝置的端點。 管道的另一端一律是主控制器。
將 I/O 要求傳送至裝置之前,用戶端驅動程式必須從 USB 裝置擷取設定、介面、端點、廠商和類別特定描述項的相關信息。 此外,驅動程式也必須設定裝置。 裝置組態牽涉到選取組態和每個介面內的替代設定等工作。 每個替代設定都可以指定一或多個可用於數據傳輸的 USB 端點。
如需裝置設定的相關信息,請參閱 如何選取USB裝置 的設定和 如何在USB介面中選取替代設定。
在用戶端驅動程式設定裝置之後,驅動程式可以存取目前所選替代設定中每個端點的 USB 驅動程式堆疊所建立的管道句柄。 若要將數據傳送至端點,用戶端驅動程式會藉由格式化特定要求類型的 URB 來建立要求。
本節內容
發行項 | 描述 |
---|---|
如何傳送 USB 控制傳輸 | 本文說明控制項傳輸的結構,以及客戶端驅動程式應該如何將控件要求傳送至裝置。 |
如何列舉 USB 管道 | 本文提供 USB 管道的概觀,並說明 USB 用戶端驅動程式從 USB 驅動程式堆疊取得管道句柄所需的步驟。 |
如何使用連續讀取器從USB管道讀取數據 | 本文說明 WDF 提供的連續讀取器物件。 本文中的程式提供如何設定物件的逐步指示,以及如何使用它從USB管道讀取數據。 |
如何傳送 USB 大量傳輸要求 | 本文提供USB大量傳輸的簡短概觀。 它也提供客戶端驅動程式如何從裝置傳送和接收大量數據的逐步指示。 |
如何在 USB 大量端點中開啟和關閉靜態數據流 | 本文討論靜態串流功能,並說明 USB 用戶端驅動程式如何在 USB 3.0 裝置的大量端點中開啟和關閉串流。 |
如何將數據傳輸至 USB 的時序端點 | 本文說明客戶端驅動程式如何建置 USB 要求區塊 (URB) ,以在 USB 裝置中的不時點來回傳輸數據。 |
如何傳送鏈結的 MDL | 在本文中,您將瞭解 USB 驅動程式堆疊中鏈結的 MDLs 功能,以及用戶端驅動程式如何將傳輸緩衝區當做 MDL 結構的鏈結傳送。 |
如何從 USB 管道錯誤復原 | 本文提供有關數據傳輸至 USB 管道失敗時可以嘗試的步驟相關信息。 本文所述的機制涵蓋大量、中斷和連續管道上的中止、重設和迴圈埠作業。 |
USB 頻寬配置 | 本節提供有關仔細管理 USB 頻寬的指引。 |