Erste Schritte für die Entwicklung von USB-Clienttreibern

In diesem Abschnitt werden Konzepte und Tools zur Entwicklung von USB-Treibern vorgestellt. Der Abschnitt gilt für Entwickler, die neu in der Treiberentwicklung sind und einen Treiber für ein USB-Gerät implementieren möchten, für das Microsoft keinen im Lieferumfang enthaltenen Treiber bereitstellt. Diese Treiber werden in dieser Dokumentation als USB-Clienttreiber bezeichnet. In den Themen in diesem Abschnitt werden allgemeine USB-Konzepte beschrieben und schrittweise Anweisungen zum Ausführen allgemeiner Aufgaben eines USB-Clienttreibers bereitgestellt. Ausführliche Informationen zu diesen Konzepten finden Sie unter USB-Spezifikationen unter USB-Dokumente.

Treiberentwickler müssen über Programmierkenntnisse in der Programmiersprache C++ verfügen und die Konzepte von Funktionszeigern, Rückruffunktionen und Ereignishandlern verstehen. Beim Schreiben eines Treibers, der auf dem User-Mode Driver Framework basiert, muss der Entwickler mit C++ und COM vertraut sein.

Lernpfad für USB-Clienttreiberentwickler

  1. Lesen Sie die USB-Spezifikation 3.2.

    • Erfahren Sie mehr über die Branchenspezifikation und die verschiedenen Komponenten (Gerät, Hostcontroller und Hub) der Architektur. Es ist wichtig, das Datenflussmodell, die Kommunikation zwischen Host und Gerät und das Format der Anforderungen zu verstehen, die das Gerät erwartet.
  2. Rufen Sie ein USB-Testgerät ab.

    • Verfügen Sie über ein USB-Gerät und dessen Hardwarespezifikation. In der Spezifikation werden die Gerätefunktionen und die unterstützten Anbieterbefehle beschrieben. Verwenden Sie die Spezifikation, um die Funktionalität des Gerätetreibers und die zugehörigen Entwurfsentscheidungen zu bestimmen.

    • Verwenden Sie das OSR USB FX2 Learning Kit , wenn sie noch nicht mit der USB-Treiberentwicklung vertraut sind. Das Kit eignet sich am besten zum Untersuchen von USB-Beispielen, die in diesem Dokumentationssatz enthalten sind.

    • Verfügen Sie über ein Microsoft USB Test Tool (MUTT)-Geräte. MUTT-Hardware kann bei JJG Technologies erworben werden. Auf dem Gerät ist keine installierte Firmware installiert. Laden Sie zum Installieren der Firmware das MUTT-Softwarepaket herunter. Weitere Informationen finden Sie in der Im Paket enthaltenen Dokumentation.

  3. Untersuchen Sie das USB-Gerätelayout und die zugehörigen USB-Deskriptoren.

    • Beschreiben Sie die Gerätefunktionen, indem Sie den Konfigurationsdeskriptor, Schnittstellendeskriptoren für die einzelnen unterstützten alternativen Einstellungen und deren Endpunktdeskriptoren lesen. Mithilfe von USBView kann der Entwickler alle USB-Controller und die damit verbundenen USB-Geräte durchsuchen und auch die Gerätekonfiguration überprüfen.
  4. Auswählen eines Treibermodells für die Entwicklung eines USB-Clienttreibers

    • Ermitteln Sie, ob es sich bei dem Treiber um einen benutzerdefinierten Treiber handelt, oder verwenden Sie einen der von Microsoft bereitgestellten Treiber basierend auf dem Entwurf des Zielgeräts. Wählen Sie das beste Treibermodell aus, und beschreiben Sie die von den einzelnen Modellen unterstützten Features.
  5. Sehen Sie sich die von Microsoft bereitgestellten Konzepte für usb-Treiberstapel und Treiberentwicklung an.

  6. Bereiten Sie die Entwicklungs- und Debugumgebung vor.

  7. Schreiben Sie Ihren ersten Treiber.

  8. Erweitern Sie Ihren Treiber, indem Sie eine USB-Steuerungsübertragungsanforderung senden.

  9. Erweitern Sie Ihren Treiber, um WDF-USB-E/A-Zielobjekte zum Ausführen von USB-Datenübertragungen zu verwenden.

Communityressourcen für USB