Udostępnij za pośrednictwem


Uniwersalna magistrala szeregowa (USB)

Universal Serial Bus (USB) zapewnia rozszerzalny interfejs szeregowy Plug and Play, który zapewnia standardowe, tanie połączenie dla urządzeń peryferyjnych. Urządzenia USB obejmują klawiatury, myszy, drukarki, skanery, urządzenia magazynujące, modemy, kamery wideokonferencje i inne.

USB-IF to specjalne grupy zainteresowań (SIGs), które utrzymują oficjalną specyfikację USB, specyfikacje testowe i narzędzia.

Systemy operacyjne Windows obejmują natywną obsługę kontrolerów hostów USB, koncentratorów oraz urządzeń zgodnych z oficjalną specyfikacją USB. System Windows udostępnia również interfejsy programistyczne, których można użyć do tworzenia sterowników urządzeń i aplikacji komunikujących się z urządzeniem USB.

USB dla konstruktorów urządzeń ikona USB dla deweloperów sterowników ikona USB dla deweloperów aplikacji ikona ikona certyfikacji USB HCK

USB w systemie Windows

  • Obsługa złączy USB Type-C: dla OEM-ów, którzy chcą budować system Windows ze złączami USB Type-C.

  • uniwersalnej magistrali szeregowej 4 (USB4™): Zapewnia producentom OEM, IHV i krzemowym dostawcom wdrażających systemy Windows z obsługą USB4 informacji o menedżerze połączeń USB4, ułatwiając debugowanie i wdrażanie procedur.

  • USB FAQ: często zadawane pytania od programistów sterowników dotyczące stosu USB i funkcji obsługiwanych w USB.

  • Deskryptory OS Microsoft dla urządzeń USB: Windows definiuje deskryptory OS MS, które umożliwiają lepsze wyliczanie podczas połączenia z systemem Windows.

Narzędzia programistyczne

Przykłady USB

Tworzenie sterownika USB lub aplikacji dla systemu Windows

Wprowadzenie do opracowywania sterowników USB. Zawiera informacje na temat wybierania najbardziej odpowiedniego modelu do dostarczania sterownika USB dla urządzenia.

Zapisywanie sterownika klienta USB (KMDF, UMDF)

Ta sekcja zawiera samouczki dotyczące pisania pierwszych sterowników USB trybu użytkownika i trybu jądra przy użyciu szablonów USB dołączonych do programu Microsoft Visual Studio.

Zapisywanie sterownika kontrolera hosta USB

Napisz sterownik kontrolera hosta, który będzie komunikował się z UCX, jeśli:

  • Tworzysz kontroler hosta xHCI, który nie jest zgodny ze specyfikacją.
  • Tworzysz niestandardowy sprzęt inny niż xHCI, taki jak wirtualny kontroler hosta.

Rozważmy na przykład stację dokującą bezprzewodową, która obsługuje urządzenia USB. Komputer komunikuje się z urządzeniami USB za pośrednictwem stacji dokującej bezprzewodowej, używając USB przez TCP jako protokołu transportowego.

Zapisywanie sterownika kontrolera funkcji dla urządzenia USB

Można opracować sterownik kontrolera, który obsługuje wszystkie transfery danych USB i polecenia wysyłane przez hosta do urządzenia. Ten sterownik komunikuje się z dostarczonym przez firmę Microsoft rozszerzeniem kontrolera funkcji USB (UFX).

tworzenie sterowników systemu Windows dla kontrolerów funkcji USB

Dokumentacja rozszerzeń klas funkcji USB (UFX)

Napisz sterownik złącza USB Type-C

System Windows 10 wprowadza obsługę nowego łącznika USB: USB Type-C. Możesz napisać sterownik dla łącznika, który komunikuje się z modułem rozszerzenia klasy dostarczonym przez firmę Microsoft: UcmCx, aby obsługiwać scenariusze dotyczące złączy Type-C, na przykład takie, w których porty obsługują Typ-C oraz dostarczanie zasilania.

tworzenie sterowników systemu Windows dla łączników Type-C USB

Dokumentacja rozszerzeń klas menedżera łączników USB (UcmCx)

Napisz sterownik kontrolera podwójnej roli USB

Kontrolery roli podwójnej USB są teraz obsługiwane w systemie Windows 10. System Windows zawiera wbudowane sterowniki klienta dla kontrolerów ChipIdea i Synopsis. W przypadku innych kontrolerów firma Microsoft udostępnia zestaw interfejsów programowania, które umożliwiają rozszerzenie klasy podwójnej roli (UrsCx) i sterownik klienta do komunikowania się ze sobą w celu obsługi funkcji przełączania ról kontrolera z podwójną rolą.

Aby uzyskać więcej informacji na temat tej funkcji, zobacz:

Architektura stosu podwójnej roli USB USB

Dokumentacja programowania sterowników kontrolera podwójnej roli USB

Zapisywanie sterownika USB dla emulowanych urządzeń

Można opracować emulowany sterownik kontrolera hosta uniwersalnej magistrali szeregowej (USB) i podłączone wirtualne urządzenie USB. Oba składniki są łączone w jeden sterownik KMDF, który komunikuje się z rozszerzeniem klasy emulacji urządzenia USB (UdeCx) dostarczonym przez firmę Microsoft.

tworzenie sterowników systemu Windows dla emulowanych urządzeń USB (UDE)

Dokumentacja programistyczna emulowanego sterownika kontrolera hosta USB

Rozszerzenie WDF do tworzenia sterowników USB

Napisz aplikację UWP

  • Komunikacja z urządzeniami USB od początku do końca: Zawiera instrukcje krok po kroku, jak wdrażać funkcje USB w aplikacji platformy Universal Windows. Aby napisać taką aplikację dla urządzenia USB, potrzebne są programy Visual Studio i Microsoft Windows Software Development Kit (SDK).

  • Windows.Devices.Usb: dokumentacja programowania przestrzeni nazw platformy UWP.

Pisanie aplikacji na pulpit systemu Windows

  • Napisz aplikację WinUSB: opisuje sposób wywoływania funkcji WinUSB w celu komunikowania się z urządzeniem USB.

  • Funkcje WinUSB

  • Typowe scenariusze programowania: lista typowych zadań wykonywanych przez sterownik lub aplikację w celu komunikowania się z urządzeniem USB. Uzyskaj szybkie informacje o interfejsach programowania potrzebnych dla każdego zadania.

Testowanie urządzeń USB za pomocą systemu Windows

Omówienie urządzeń Microsoft USB Test Tool (MUTT)

Informacje o narzędziach do:

  • Testowanie sprzętu lub oprogramowania USB
  • Przechwytywanie śladów operacji i innych zdarzeń systemowych
  • Zobacz, jak stos sterowników USB odpowiada na żądanie wysyłane przez sterownik klienta lub aplikację

Zapoznaj się z omówieniem testów w zestawie certyfikacji sprzętu, które umożliwiają dostawcom sprzętu i producentom urządzeń przygotowanie urządzeń USB i kontrolerów hosta na potrzeby przesyłania certyfikatów sprzętowych systemu Windows.

Uniwersalna magistrala szeregowa 4 (USB4™)

Inne zasoby dla usb

  • oficjalna specyfikacja USB: zawiera pełne szczegóły techniczne protokołu USB.

  • blog zespołu microsoft Windows USB Core Team: zapoznaj się z wpisami napisanymi przez zespół USB firmy Microsoft. Blog koncentruje się na stosie sterowników USB dla systemu Windows, który współpracuje z różnymi kontrolerami hosta USB i różnymi koncentratorami USB znajdującymi się na komputerze z systemem Windows. Przydatny zasób dla deweloperów sterowników klienta USB i projektantów sprzętu USB, aby zrozumieć implementację stosu sterowników, rozwiązać typowe problemy i wyjaśnić, jak używać narzędzi do zbierania śladów i plików dziennika.

  • listy online OSR — ntdev: lista dyskusyjna zarządzana przez OSR Online dla deweloperów sterowników trybu jądra.

  • Centrum deweloperów sprzętu systemu Windows: różne zasoby oparte na często zadawanych pytaniach deweloperów, którzy dopiero opracowują urządzenia USB i sterowniki współpracujące z systemami operacyjnymi Windows.

Sprzęt USB do uczenia

  • urządzenia MUTT: urządzenia MUTT i SuperMUTT oraz towarzyszące oprogramowanie są zintegrowane z pakietem testów USB HCK. Zapewniają one zautomatyzowane testowanie, które mogą być używane podczas cyklu opracowywania kontrolerów USB, urządzeń i systemów, zwłaszcza testów przeciążeniowych.

  • OSR USB FX2 Learning Kit: Jeśli dopiero zaczynasz programować sterowniki USB. Zestaw jest najbardziej odpowiedni do badania próbek USB zawartych w tym zestawie dokumentacji. Zestaw szkoleniowy można pobrać ze sklepu OSR Online Store.

Dowiedz się więcej o sterownikach USB dostarczonych przez firmę Microsoft

  • sterowniki po stronie urządzenia USB w systemie Windows: opisuje architekturę stosu funkcji USB.

  • sterowniki USB działające po stronie hosta w Windows: przedstawia omówienie architektury stosu sterowników uniwersalnej magistrali szeregowej (USB). Firma Microsoft udostępnia podstawowy stos sterowników, które współdziałają z urządzeniami połączonymi z kontrolerami EHCI i xHCI.

  • USB-IF sterowniki klas urządzeń: Lista sterowników dostarczonych przez firmę Microsoft dla obsługiwanych klas urządzeń USB. System Windows udostępnia sterowniki klas urządzeń dostarczane z systemem dla wielu klas urządzeń zatwierdzonych przez USB-IF, takich jak audio, magazyny danych itp.

  • ogólny sterownik funkcji USB-WinUSB: WinUSB jest ogólnym sterownikiem dla urządzeń USB, który jest dołączony do wszystkich wersji systemu Windows od wersji Windows Vista. System Windows udostępnia Winusb.sys, który można załadować jako sterownik funkcji dla urządzenia niestandardowego oraz jako funkcję urządzenia złożonego.

  • ogólny sterownik nadrzędny USB dla urządzeń złożonych — usbccgp: sterownik nadrzędny dla urządzeń USB z wieloma funkcjami. Usbccgp tworzy obiekty urządzeń fizycznych (PDO) dla każdej z tych funkcji. Te poszczególne Fizyczne Obiekty Urządzeń (PDO) zarządzają odpowiednimi sterownikami funkcji USB, które mogą być sterownikiem Winusb.sys lub sterownikiem klasy urządzeń USB.