banner
Centre d'Information
Nous nous concentrons sur la livraison de produits exceptionnels, des livraisons rapides et un service client attentif.

Hôte USB sur RP2040

Apr 26, 2023

Les gens de [Adafruit] montrent un hack soigné - un hôte USB sur RP2040, en utilisant le désormais célèbre périphérique PIO. [Adafruit] construit beaucoup de cartes RP2040, et naturellement, vous devez les tester avant de les expédier aux clients. Ils ont utilisé des Teensies très spécifiques pour cela, et à un moment donné, ceux-ci sont devenus unobtainium. Sur la base du travail de [sekigon-gonnoc] et avec l'aide de [Thach], ils ont fait en sorte que leur bibliothèque TinyUSB prenne en charge le bitbanging d'USB sur PIO, et y ont porté avec succès leur firmware de gabarit de test !

Le référentiel Pico-PIO-USB de base de [sekigon-gonnoc] montre un état des choses assez impressionnant – avec des modes d'hôte USB à faible vitesse et à pleine vitesse et de périphérique USB à pleine vitesse pris en charge, et quelques exemples pour vous aider à démarrer. Le travail d'[Adafruit] intègre ce code dans sa pile TinyUSB, en se concentrant spécifiquement sur les fonctionnalités MST (stockage de masse) - car c'est ce dont vous avez besoin pour programmer un RP2040. Bien sûr, ils fournissent également un exemple de stockage de masse pour démarrer !

Il est très important d'avoir des gabarits de test lors de la fabrication de plusieurs pièces d'une carte, et avec le RP2040 prenant en charge de plus en plus d'interfaces grâce à PIO, cela ressemble à la puce parfaite pour votre prochain PCB destiné aux tests de production. Avec les cerveaux de gabarit pris en charge, vous voudrez envisager de construire une pièce mécanique non moins importante, et nous avons couvert plusieurs façons de régler cela - voici un script OpenSCAD qui génère des fichiers de découpe au laser à partir de cartes KiCad, ou un gabarit construit à partir de ferraille de cuivre FR4, et un didacticiel assez complet sur la création de vos propres gabarits à découper au laser, pour démarrer.