I think pio_sm_put() is a single-instruction write to a memory address mapped to the FIFO register, so I expect it is about one quantum of CPU time.
I don't remember the details of DMA registers; I think a full setup can take two writes.
As you say, not an important difference unless your wristwatch has a nanosecond hand.
I find DMA is nice for code simplicity to dump something like display data to a peripheral without polling - though the DMA setup is noticeable (in lines of code, not CPU time).
I don't remember the details of DMA registers; I think a full setup can take two writes.
As you say, not an important difference unless your wristwatch has a nanosecond hand.
I find DMA is nice for code simplicity to dump something like display data to a peripheral without polling - though the DMA setup is noticeable (in lines of code, not CPU time).
Statistics: Posted by Eric Buddington — Tue Dec 17, 2024 4:00 pm