Partager via


Premières étapes pour le développement de pilotes clients USB

Cette section présente les concepts et outils de développement de pilotes USB. La section s’applique aux développeurs nouveaux au 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 pilote client USB dans cette documentation. Les rubriques de cette section décrivent les concepts USB de haut niveau et fournissent des instructions pas à pas sur l’exécution de tâches courantes d’un pilote client USB. Pour plus d’informations sur ces concepts, consultez les spécifications USB des documents USB.

Les développeurs de pilotes doivent avoir une expérience de codage dans le langage de programmation C++ et comprendre les concepts des pointeurs de fonction, desfonctions de rappel et des 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 du secteur et les différents composants (appareil, contrôleur hôte et hub) de l’architecture. Il est important de comprendre le modèle de flux de données, la façon dont l’hôte et l’appareil communiquent entre eux, ainsi que le format des demandes attendues par l’appareil.
  2. Obtenez un périphérique USB de test.

    • Disposer d’un périphérique USB et de sa spécification matérielle. La spécification décrit les fonctionnalités de l’appareil et les commandes de fournisseur 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.

    • Disposez du kit d’apprentissage OSR USB FX2 si vous débutez avec le développement de pilotes USB. Le kit est le plus approprié pour étudier les exemples USB inclus dans cet ensemble de documentation.

    • Disposez d’appareils MUTT (Microsoft USB Test Tool). Le matériel MUTT peut être acheté auprès de JJG Technologies. L’appareil n’a pas installé le microprogramme installé. Pour installer le microprogramme, téléchargez le package logiciel MUTT. Pour plus d’informations, consultez la documentation incluse dans le package.

  3. Étudiez la disposition du périphérique USB et les descripteurs USB associés.

    • Décrivez les fonctionnalités de votre appareil en lisant le descripteur de configuration, les descripteurs d’interface pour chaque autre paramètre pris en charge et leurs descripteurs de point de terminaison. En utilisant USBView, le développeur peut parcourir tous les contrôleurs USB et les périphériques USB connectés à ces contrôleurs et inspecter également la configuration de l’appareil.
  4. Choisir un modèle de pilote pour le développement d’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 de l’appareil cible. Choisissez le meilleur modèle de pilote et décrivez les fonctionnalités prises en charge par chaque modèle.
  5. Passez en revue la pile de pilotes USB et les concepts de développement de pilotes fournis par Microsoft.

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

  7. Écrivez votre premier pilote logiciel.

  8. Étendez votre pilote de périphérique en envoyant une demande de transfert de contrôle via USB.

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

Ressources de la communauté pour USB