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 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.
- Wprowadzenie do programowania sterowników klienta USB
- dokumentacja dotycząca programowania sterowników urządzeń USB
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.
Tworzenie sterowników systemu Windows dla kontrolerów hosta USB
Dokumentacja dotycząca kontrolerów hosta USB (UCX)
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
- Udecxusbdevice.h
- Udecxusbendpoint.h
- Udecxwdfdevice.h
- Udecxurb.h
Rozszerzenie WDF do tworzenia sterowników USB
Dokumentacja rozszerzeń klas menedżera łączników USB (UcmCx)
Dokumentacja kontrolera hosta USB (UCX)
Odniesienie do rozszerzeń klas funkcji USB (UFX)
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™)
Uniwersalna Magistrala Szeregowa 4 (USB4™): Oferuje producentom OEM, IHV i dostawcom krzemowych narzędzia wspierające systemy Windows z obsługą USB4, informacje o menedżerze połączeń USB4 oraz ułatwia debugowanie i uruchamianie procedur.
Wprowadzenie do menedżera połączeń USB4 w systemie Windows: Menedżer połączeń w domenie USB4 jest odpowiedzialny za wyliczanie, konfigurację i zarządzanie domeną USB4.
szczegóły projektu uniwersalnej magistrali szeregowej 4 (USB4™) i ogólne wymagania: wymagania dotyczące projektowania wysokiego poziomu i środowiska użytkownika.
Uniwersalna Magistrala Szeregowa 4 (USB4™) wymaga testowania: Wymagania HLK nie są zaprojektowane tak, aby zapewnić kompleksowe pokrycie testów funkcjonalnych dla zestawu funkcji USB4. Zalecamy przeprowadzenie dokładnej weryfikacji ważnych scenariuszy użycia.
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.