Partager via


Premiers pas pour le développement de pilotes clients USB

Cette rubrique présente les concepts et les outils de développement de pilotes USB. Cette section s’adresse aux développeurs débutants en développement de pilotes qui souhaitent implémenter un pilote pour un périphérique USB pour lequel Microsoft ne fournit pas de pilote intégré. Ces pilotes sont appelés pilotes clients USB dans cette documentation. Les rubriques de cette section décrivent les concepts USB de haut niveau et fournissent des instructions détaillées sur la réalisation des tâches courantes d’un pilote client USB. Pour des informations détaillées sur ces concepts, consultez les spécifications USB à la section Documents USB.

Les développeurs de pilotes doivent avoir une expérience en codage dans le langage de programmation C++ et comprendre les concepts de pointeurs de fonction, fonctions de rappel et gestionnaires d’événements. Si vous écrivez un pilote basé sur le User-Mode Driver Framework, le développeur doit être familiarisé avec C++ et COM.

Parcours d’apprentissage pour les développeurs de pilotes clients USB

  1. Lisez la Spécification USB 3.2.

    • Découvrez la spécification de l’industrie et les différents composants (périphérique, contrôleur hôte et concentrateur) de l’architecture. Il est important de comprendre le modèle de flux de données, comment l’hôte et le périphérique communiquent entre eux et le format des demandes que le périphérique attend.
  2. Obtenez un périphérique USB de test.

    • Ayez un périphérique USB et sa spécification matérielle. La spécification décrit les capacités du périphérique et les commandes du fabricant prises en charge. Utilisez la spécification pour déterminer les fonctionnalités du pilote de périphérique et les décisions de conception associées.

    • Munissez-vous du kit d’apprentissage OSR USB FX si vous débutez dans le développement de pilotes USB. Ce kit est le plus adapté pour étudier les exemples USB inclus dans cette documentation.

    • Munissez-vous de périphériques Microsoft USB Test Tool (MUTT). Le matériel MUTT peut être acheté chez JJG Technologies. Le périphérique n’a pas de firmware installé. Pour installer le firmware, téléchargez le package logiciel MUTT. Pour plus d’informations, consultez la documentation incluse dans le package.

  3. Étudiez la disposition des périphériques USB et les descripteurs USB associés.

    • Décrivez les capacités de votre périphérique en lisant le descripteur de configuration, les descripteurs d’interface pour chaque paramètre alternatif pris en charge et leurs descripteurs d’extrémité. En utilisant USBView, le développeur peut parcourir tous les contrôleurs USB et les périphériques USB qui y sont connectés et également inspecter la configuration du périphérique.
  4. Choisissez un modèle de pilote pour développer un pilote client USB

    • Déterminez si le pilote doit être un pilote personnalisé ou utiliser l’un des pilotes fournis par Microsoft en fonction de la conception du périphérique cible. Choisissez le meilleur modèle de pilote et décrivez les fonctionnalités prises en charge par chaque modèle.
  5. Examinez la pile de pilotes USB fournie par Microsoft et les concepts de développement de pilotes.

  6. Préparez l’environnement de développement et de débogage.

  7. Écrivez votre premier pilote.

  8. Étendez votre pilote en envoyant une demande de transfert de contrôle USB.

  9. Étendez votre pilote pour utiliser des objets cibles d’E/S USB WDF pour effectuer des transferts de données USB.

Ressources communautaires pour USB