Périphérique USB : STM32 est aussi dans la course !

Spécialité(s)


Résumé

En conclusion d’un précédent article [1] j’invitais le lecteur aventureux à tenter l’expérience consistant à créer un périphérique USB de type Vendor Class sur microcontrôleur STM32, comme nous l’avions fait sur ESP32S2, sur Raspberry Pi Pico, sur Cypress/Infineon FX2LP, sur une paire de SBC et même sur un latptop Lenovo ThinkPad. Ma curiosité étant ce qu’elle est, force est de constater que le simple fait d’avoir soulevé la question m’aura suffi à devoir jeter un œil à la problématique...


Précisons de suite que ce qui suit ne sera pas une redite de ce qui a été détaillé précédemment, et ce, pour une raison très simple : il n’y a pas grand-chose à dire, car implémenter notre périphérique de démonstration sur STM32 est, d’un point de vue du code lui-même, à 95 % ce que nous avons déjà fait sur Raspberry Pi Pico dans le numéro 56 [2]. En effet, qu’il s’agisse de RP2040, d’ESP32 ou de STM32, la pierre angulaire est la pile TinyUSB [3] et les différences entre plateformes supportées se résument majoritairement au niveau d’intégration dans le SDK associé. Or, Pico SDK et les bibliothèques pour STM32 (HAL et CMSIS), à la différence de l’ESP-IDF, se limitent majoritairement à traiter TinyUSB comme une pièce rapportée plus que comme un élément faisant partie intégrante de l’environnement. Le support TinyUSB pour les MCU Espressif est un fork du projet officiel, complété d’un module ajoutant des fonctionnalités et limitant grandement la quantité de code…

Cet article est réservé aux abonnés. Il vous reste 97% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous