cancel
Showing results for 
Search instead for 
Did you mean: 

DMA circular mode with 38 bytes on UART RX

hariprasad
Associate III
Posted on December 10, 2015 at 06:28

I'm using STM32F4 discovery board and I'm receiving 38 bytes on UART RX line periodically, since I want to transfer this in DMA I used DMA circular mode.

But according to equation

DMA_SxNDTR = Multiple of ((Mburst beat) � (Msize)/(Psize)),

(Mburst beat) = 4, 8 or 16, ((Msize)/(Psize)) = 1, 2, 4, 1/2 or 1/4

My requirement wont satisfy the equation, so how can I configure the DMA in Circular mode for 38 bytes ?

#dma #usart
2 REPLIES 2
Posted on December 10, 2015 at 07:02

You did not mention the STM32 model you are using.

That remark, while probably valid when bursts set, is confusing indeed, as it appears to imply that there is no non-burst mode. There is. Just set MBURST to 00.

Mayla or somebody else from ST, can you please command and/or initiate an appropriate amendment that comment? Thanks.

JW

Posted on December 10, 2015 at 11:45

Please don't modify posts after they have been answered.

I have given you the hint how to do it above - don't use bursts at all.

JW