Abort the transfer and start a new one - dma_channel_abort() if using the SDK, see also 2.5.5.3. in the datasheet.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?
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