USB 端點及其管道
USB 裝置具有用於數據傳輸的端點。 在主機端,端點會以管道表示。 本主題區分這兩個詞彙。
摘要
- 端點是裝置上的硬體;管道是主機端的軟體。
- 未設定端點;管道已設定為傳輸
- 主機會將數據傳送或接收至管道或從管道接收數據。
USB 端點
端點是 USB 裝置上的緩衝區。 端點是與硬體本身相關的詞彙,與主機操作系統無關。 主機可以傳送和接收數據到該緩衝區或從該緩衝區接收數據。 端點可以分類為控制和數據端點。
每個USB裝置都必須在位址0至少提供一個控制端點,稱為預設端點或Endpoint0。 此端點是雙向的。 也就是說,主機可以將數據傳送至端點,並在一次傳輸中接收數據。 控制傳輸的目的是讓主機取得裝置資訊、設定裝置,或執行裝置專屬的控制作業。
數據端點是選擇性的,用於傳輸數據。 它們是單向的,具有 (控件、中斷、大量、等時) 和其他屬性的類型。 這些屬性會在端點描述項 (請參閱標準 USB 描述項) 。
在USB術語中,端點的方向 ( 和傳輸) 是以主機為基礎。 因此,IN 一律是指從裝置傳送至主機,而 OUT 一律是指從主機傳輸到裝置。 USB 裝置也可以支援控制數據的雙向傳輸。
裝置上的端點會分組為功能介面,而一組介面構成裝置組態。 如需詳細資訊,請參閱USB裝置配置。
主機軟體可以在設定裝置之前或在選取替代設定期間查看端點資訊。 您將逐一查看所有介面,然後逐一查看每個設定的介面清單,並查看設定中每個端點的屬性或整個端點集。 查看端點資訊不會影響裝置的設定狀態。
USB 管道
數據會透過稱為 管道的抽象概念,在USB裝置與USB主機之間傳輸。 管道只是軟體詞彙。 管道會與裝置上的端點交談,且該端點具有位址。 管道的另一端一律是主控制器。
藉由選取組態和介面的替代設定,即可開啟端點的管道。 因此,它們會成為 I/O 作業的目標。 管道具有端點的所有屬性,但作用中且可用來與主機通訊。
未設定的端點稱為端點,而已設定的端點稱為管道。