Showing results for 
Search instead for 
Did you mean: 

DMA burst sequence does not gets started immediately

Associate II

Hi All,

I am using STM32F779I- eval kit.

I am using DMA Burst mode. I have created two buffers(buffer1 and buffer2) with different sequence.

Lets say Buffer1 with sequence 1 is running using HAL_TIM_DMABurst_WriteStart () HAL API. In between of sequence 1 I disabled DMA stream using HAL_TIM_DMABurst_WriteStop().

Here NDTR shows remaining data.

Now I want to start DMA burst sequence 2 using buffer 2. But here I am not able to start DMA burst sequence 2 immediately. Here first sequence 1 remaining data runs and after that sequence 2 starts.

But I want to disable and abort DMA burst sequence1 and start DMA burst sequence 2 without delay.

I am using DMA in a circular mode. I have tried both FIFO and Direct mode but still delay is there in between both sequences.

What is the correct method to stop DMA burst sequence immediately and start new DMA burst sequence?

Thanks in advance.