Hacker News new | ask | show | jobs
by ghayes 664 days ago
I just started playing around with PIO and DMA on a Pico, and it’s really fun just how much you can do on the chip without invoking the main CPU. For context, PIO is a mini-language you can program at the edge of the chip that can directly respond to and write to external IO. DMA allows you to tell the chip to send a signal based on data in memory, and can be programmed to loop or interrupt to limit re-invoking. The linked repo uses these heavily for its fast Ethernet communication.
1 comments

For added clarity, the Pico includes an RP2040 which is where the PIO runs.
Thanks, and you're correct; not sure why you got downvoted for this. For anyone curious here are the data sheets for RP2040 [for original Pico] and RP2350 [for Pico 2], which describe the systems in detail.

RP2040: https://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.p...

RP2350: https://datasheets.raspberrypi.com/rp2350/rp2350-datasheet.p...

"the Pico includes an RP2040 which is where the PIO runs" to me sounds like it implies either

- The original Pico was not built around the RP2040 as its central part ("includes" sounds to me like it was an addition)

- The Pico 2 includes a RP2040 (in addition to the RP2350) which runs PIO

Neither of which are true. I'm guessing some other people had a similar reaction.