乙個usb的控制傳輸如圖所示:
乙個usb的控制傳輸分為2個或3個階段,setup stage,data stage(視情況而定),status stage。
一:首先是setup stage,usb host總是先發起第乙個packet:
1.host先傳送乙個setup包;
2.然後host傳送乙個data0的 setup data(比如獲取裝置描述符);
3.然後usb 裝置回應ack表示結束一次互動(當是獲取裝置描述符時,usb裝置該準備好資料)。
二:然後是data stage,比如是獲取裝置描述符,主機是請求資料輸入
1。host傳送乙個in包,請求資料輸入;
2. usb裝置發起乙個data1 為起始的資料報回給主機(把裝置描述符傳送給主機);
3. host回應ack結束一次互動,如果資料未傳完,繼續data stage。
三:最後是status stage
1. host發起乙個in包
2. usb裝置傳送乙個0長度的data1資料報
3. 最後主機回應ack結束乙個互動。
這樣一次控制傳輸就完成了, 這是獲取usb滑鼠裝置描述符的一次控制傳輸。
USB控制傳輸
控制傳輸 控制傳輸是 usb傳輸中最重要的傳輸,只有正確地執行完控制傳輸,才能進一步地執行其他的傳輸型別。這種傳輸是用來提供介於主機與設各之間的配置 命令或狀態的通訊協議。控制傳輸能夠使能主機去讀取相關設各的資訊,去設定設各位址,以及選擇配置與其他的設定等。此外,控制傳輸也能夠送出自定義的要求,以針...
USB控制傳輸
1 usb 端點解釋 2 usb驅動之 端點 endpoint 3 usb驅動 描述符 urb 管道 控制傳輸 控制傳輸是 usb傳輸中最重要的傳輸,只有正確地執行完控制傳輸,才能進一步地執行其他的傳輸型別。這種傳輸是用來提供介於主機與設各之間的配置 命令或狀態的通訊協議。控制傳輸能夠使能主機去讀取...
USB控制傳輸過程 詳細解析
首先,要明白兩個觀點。第一,usb匯流排上所有的事務 資料流傳輸 都是由usb host主動發起,而usb裝置永遠永遠都是只是被動地接收然後處理usb host發來的各種各樣的命令 要求 第二,中斷是usb host和usb裝置之間的信令員,usb host所有的要求都是通過這個信令員即中斷來通知u...