Udostępnij przez


Standardowe identyfikatory USB

Zestaw identyfikatorów generowanych dla urządzeń USB zależy od tego, czy urządzenie jest urządzeniem z jednym interfejsem, czy urządzeniem z wieloma interfejsami.

Urządzenia USB z jednym interfejsem

Gdy nowe urządzenie USB jest podłączone, dostarczony przez system sterownik koncentratora USB komponuje następujący identyfikator urządzenia przy użyciu informacji wyodrębnionych z deskryptora urządzenia:

USB\VID_v(4)&PID_d(4)&REV_r(4)

Gdzie:

Sterownik koncentratora wyodrębnia odpowiednio kody dostawcy i produktu z pól idVendor, idProduct i bcdDevicedeskryptora urządzenia. Te kody są czterocyfrowymi liczbami szesnastkowymi.

Sekcja modelu INF może również określać następujący identyfikator sprzętu:

USB\VID_v(4)&PID_d(4)

A także następujące zgodne identyfikatory:

USB\CLASS_c(2)&SUBCLASS_s(2)&PROT_p(2)

USB\CLASS_c(2)&SUBCLASS_s(2)

USB\CLASS_c(2)

Gdzie:

  • c(2) to kod klasy urządzenia pobrany z deskryptora urządzenia.
  • s(2) to kod podklasy urządzenia.
  • P(2) to kod protokołu.

Pola bDeviceClass, bDeviceSubClass i bDeviceProtocoldeskryptora urządzenia określają odpowiednio kod klasy urządzenia, kod podklasy i kod protokołu. Te kody są dwucyfrowymi liczbami szesnastkowymi.

Urządzenia USB z wieloma interfejsami

Urządzenia z wieloma interfejsami są nazywane urządzeniami złożonymi . Gdy nowe urządzenie złożone USB zostaje podłączone do komputera z systemem Windows, sterownik węzła USB tworzy obiekt urządzenia fizycznego (PDO) i powiadamia system operacyjny o zaktualizowaniu listy urządzeń podrzędnych. Gdy system Windows wysyła zapytanie do sterownika centrum dla identyfikatorów sprzętu skojarzonych z nowym obiektem PDO, wyszukuje odpowiednie pliki INF, aby znaleźć dopasowanie identyfikatorów. Jeśli znajdzie dopasowanie inne niż USB\COMPOSITE, ładuje sterownik wskazany w pliku INF. Jeśli jednak nie zostanie znalezione żadne inne dopasowanie, system operacyjny używa zgodnego identyfikatora USB\COMPOSITE, dla którego ładuje ogólny sterownik nadrzędny USB. Ogólny sterownik nadrzędny tworzy następnie oddzielny obiekt PDO i generuje oddzielny zestaw identyfikatorów sprzętu dla każdego interfejsu urządzenia złożonego.

Każdy interfejs ma identyfikator urządzenia w następującej formie.

USB\VID_v(4)&PID_d(4)&MI_z(2)

Gdzie:

Sekcja modelu INF może również określać następujące zgodne identyfikatory:

USB\CLASS_d(2)&SUBCLASS_s(2)&PROT_p(2)

USB\CLASS_d(2)&SUBCLASS_s(2)

USB\CLASS_d(2)

USB\COMPOSITE

Gdzie:

  • d(2) to kod klasy urządzenia pobrany z deskryptora urządzenia.
  • s(2) to kod podklasy.
  • P(2) to kod protokołu.

Pola bInterfaceClass, bInterfaceSubClass i bInterfaceProtocoldeskryptora interfejsu określają odpowiednio kod klasy urządzenia, kod podklasy i kod protokołu. Te kody są dwucyfrowymi liczbami szesnastkowymi.