Host USB su RP2040
Quelli di [Adafruit] stanno mostrando un bel trucco: host USB su RP2040, utilizzando l'ormai famosa periferica PIO. [Adafruit] costruisce molte schede RP2040 e, naturalmente, devi testarle prima di spedirle ai clienti. Per questo hanno usato Teens molto specifici e, a un certo punto, sono diventati Unobtainium. Basandosi sul lavoro di [sekigon-gonnoc] e con l'aiuto di [Thach], hanno fatto in modo che la loro libreria TinyUSB supporti il bitbanging di USB su PIO e vi hanno trasferito con successo il firmware del dispositivo di prova!
Il repository Pico-PIO-USB di base di [sekigon-gonnoc] mostra uno stato di cose piuttosto impressionante: sono supportate modalità host USB a bassa e piena velocità e modalità dispositivo USB a piena velocità, oltre a numerosi esempi per iniziare . Il lavoro di [Adafruit] integra questo codice nel proprio stack TinyUSB, concentrandosi in particolare sulle funzionalità MST (archiviazione di massa), poiché questo è ciò di cui hai bisogno per programmare un RP2040. Naturalmente, forniscono anche un esempio di archiviazione di massa per l'avvio!
Le maschere di test sono piuttosto importanti da avere quando si realizzano più pezzi di una scheda e, con RP2040 che supporta sempre più interfacce grazie a PIO, sembra il chip perfetto per il tuo prossimo PCB destinato ai test di produzione. Una volta sistemato il cervello, vorrai esaminare la costruzione di una parte meccanica non meno importante e abbiamo coperto diversi modi per risolverlo: ecco uno script OpenSCAD che genera file di taglio laser dalle schede KiCad o una maschera realizzata con rottami FR4 rivestiti in rame e un tutorial piuttosto ampio su come creare le proprie maschere tagliabili al laser, per l'avvio.