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

General • Re: Writing READ_ADDR while DMA runs

$
0
0
Suppose my DMA is working through acceleration/speed/deceleration table for a stepper,
and then I got an abort command or homing sensor and should jump to the deceleration part of the table gracefully.
What would be the best way to do that?
Abort the transfer and start a new one - dma_channel_abort() if using the SDK, see also 2.5.5.3. in the datasheet.

I haven't tried it, but I suspect that writing the READ_ADDR directly just doesn't work at all; if it does there are likely to be results that are hard to manage. Apart from anything else, there's clearly some complex pipelining going on in the DMA engine, some of which can be seen in the description of Erratum E12 in the datasheet.

Statistics: Posted by arg001 — Sat May 18, 2024 7:43 pm



Viewing all articles
Browse latest Browse all 4803

Trending Articles