4 USB的幾種狀態

2021-10-23 22:49:22 字數 1300 閱讀 7814

4、usb狀態

4.1 usb可見狀態

usb裝置可以與usb連線或分離。當usb裝置與usb分離時,它的狀態不是由本規範定義的。此規範僅在裝置被附加後處理所需的操作和屬性

usb裝置上電後處於這個狀態,分為兩種情況,如果來自於外部電源,協議裡叫做self-powered,如果來自於hub,叫做bus-powered.

在裝置通電後,它必須不響應任何匯流排事務,直到它從匯流排收到重置。在接受復位後,裝置然後是可定址的預設位址。

所有的usb裝置在加電復位以後都使用預設位址。每一裝置在連線或復位後由主機分配乙個唯一的位址。當usb裝置處於掛起狀態時,它保持這個位址不變。

在usb裝置正常工作以前,裝置必須被正確配置。

在配置狀態前,裝置只能使用端點0利用控制傳輸進行資料互動.

為節省電源,usb裝置在探測不到匯流排傳輸時自動進入中止狀態。當中止時,usb裝置保持本身的內部狀態,包括它的位址及配置。

所有的裝置在一段特定的時間內探測不到匯流排活動時必須進入中止態。不管裝置是被分配了非預設的位址或者是被配置了,已經連線的裝置必須在任何加電的時刻隨時準備中止。匯流排活動的中止可能是因為主機本身進入了中止狀態。另外,usb裝置必須在所連線的集線器埠失效時進入中止態。這就是所指的選擇性中止(selective suspend)。

未連線,所有屬性無意義.

剛連線,但沒有上電,所有屬性無意義.

連線上剛剛上電,但沒有重置.

通電且重置了,但尚未分配位址.裝置位址仍為0.

通電且重置,且分配位址.但是還沒有進行配置.

通電且重置,且分配位址.已經配置,但沒有暫停,主機可以使用裝置提供的功能.

連線到usb並且已通電,並且在3 ms內沒有看到匯流排活動。 它也可能具有唯一的位址並配置使用。但是,由於裝置被掛起,主機可能無法使用裝置的功能。

上述的1-2其實就是未連線,3的原因是由於usb的物理介面裡面電源線比資料線要長一點導致的一種情況,4-5可以看為usb的列舉過程.6是usb的正常工作狀態.7是掛起狀態.

4 USB除錯模組

1 usb硬體初始化 底層初始化使用的cubemx,庫函式版本f4 v1.25.具體配置如下 2 usb函式封裝 usb通訊中真正的收發資料都是在usb中斷中進行的,所以為了確認usb不會被其他中斷打斷,將usb的搶占優先順序設定為0。先說一下實現的大概思路吧。只是傳送 mcu pc 的話,用到了乙...

程序的幾種狀態

程序 程序 process 是計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位。程序狀態 乙個程序的生命週期可以劃分為一組狀態,這些狀態刻畫了整個程序。程序狀態即體現乙個程序的生命狀態。程序狀態 一般來說,程序有三個狀態,即就緒狀態,執行狀態 阻塞狀態。執行態 程序占...

程序的幾種狀態

程序的幾種狀態 1 執行狀態 程序正在處理器上上執行。在單處理器環境下,每個時刻最多只有乙個程序處於執行狀態。2 就緒狀態 程序已處於準備執行狀態,即程序獲得了除了處理器之外的一切所需資源,一旦得到處理器即可執行。3 阻塞狀態 又稱為等待狀態,程序正在等待某一事件而暫停執行,如等待某資源為可用 不包...