端點(endpoint):每乙個usb裝置在主機看來就是乙個端點的結合,主機只能通過端點與裝置進行通訊,以使用裝置的功能;每乙個端點實際上就是乙個一定大小的資料緩衝區。
管道(pipe):乙個usb管道是驅動程式的乙個資料區緩衝與乙個外設端點的連線,它代表了一種在兩者之間移動資料的能力。一旦裝置被配置,管道就存在了。
pipe (管道)並不是乙個實際存在的物理實質,只是邏輯上的乙個東西,比如d12晶元有三個端點,那它在被配置完之後就會有三個管道和主機通訊。在通訊時並不需要指明哪個通道,只要把資料寫入乙個端點,那個端點自然會用它自己與主機之間的管道傳輸資料。
USB驅動 USB列舉
一 列舉詳細過程 usb主機在檢測到usb裝置插入後,就要對裝置進行列舉了。為什麼要列舉呢?列舉就是主機host從裝置讀取一些資訊,知道裝置是什麼樣的裝置,如何進行通訊,這樣主機就可以根據這些資訊來載入合適的驅動程式。除錯usb裝置,很重要的一點就是usb的列舉過程,只要列舉成功了,那麼就已經成功大...
USB 裝置 USB 驅動 USB 應用程式
usb 裝置 usb 驅動 usb 應用程式 1.usb 裝置硬體部分 a.這個硬體的標識是用的 vender id 和 product id,即 廠家標識 和 產品標識 b.這個硬體規定了各個 end point 端點 的性質,讀 寫 及 型別 control interrupt bulk iso...
USB 梳理USB子系統
看了很久的usb子系統了,還是霧濛濛的,現在梳理一下。首先從bus入手,在core下面定義了struct bus type usb bus type,這就是usb的bus上的裝置與驅動通用的乙個結構體。首先看driver,api主要在core driver.c裡,註冊usb bus type的,主要...