Le port d'entrées-sorties programmable PIO, combiné avec le le coeur du processeur du  Raspberry Pi Pico RP2040, permet d'émuler du matériel qui n'est pas intégré dans la puce. La fondation Raspberry Pi a fourni les interfaces SPI, I²C, UART et carte SD, qui ont été réalisées avec les "machine à états finis" PIO.

Une interface DVI a été ajoutée plus tard tard par Luke Wren. Le Raspberry Pi Pico était ainsi capable de générer directement un signal DVI, exploitable par les écrans disposant d'une entrée HDMI. Un port Ethernet a également été possible avec les "machine à états finis" PIO, permettant au Raspberry Pi Pico de se raccorder directement à un Ethernet PHY.

 
Raspberry Pi Pico with headers
le Raspberry Pi Pico maintenant avec un CAN.


Une chose manquait encore dans cette collection d'interfaces, le bus de données  CAN (Controller Area Network), qui devait jusqu'à maintenant être réalisé par un processeur externe. On le trouve surtout dans les véhicules et les installations industrielles. Grâce à l'utilisateur de Github KevinOConnor le Raspberry Pi Pico peut maintenant implémenter un bus CAN. Pour cela on utilise un bloc PIO et un coeur de processeur. Un Raspberry Pi Pico peut ainsi se raccorder à un bus CAN, y envoyer et recevoir des données. Il y a certains éléments auxquels il faut être attentif avec la séquence des instructions. Même si l'implémentation se rapproche d'un bus de données CAN matériel, elle ne le remplace pas encore à 100%. Pour ceux qui veulent se lancer dans un bus CAN avec le Raspberry Pi Pico, il leur faudra un circuit d'interface CAN de 3,3V et un peu de programmation.

Traduction: Laurent RAUBER