Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 4950

General • Re: Help with PIO fundamentals to drive matrix-based displays.

$
0
0
My big question is, can this be set to loop? Can I set up say, 175 byte array and have the PIO refresh with that data unattended?
The PIO itself, no - each PIO SM only has 4 registers (X,Y, ISR, OSR) of 32-bits each, nowhere near your 175 bytes.

But you can do it with PIO + DMA - the PIO handles formatting and pacing the output, DMA keeps the FIFO topped up from a buffer in RAM.

DMA does have a circular mode, but that only works with power-of-2 sized buffers; the solution for this case is to use a pair of DMA channels, with one channel doing a 175-byte transfer to the PIO and then chaining to the second channel; the second channel then just reloads the first one to do it again.

Statistics: Posted by arg001 — Fri Apr 05, 2024 9:21 am



Viewing all articles
Browse latest Browse all 4950

Trending Articles