cancel
Showing results for 
Search instead for 
Did you mean: 

Why does not CubeMX configure the DMA peripheral address? My CubeMX 6.5.0 project is for NUCLEO-G474RE and uses USART3 RX DMA via LL.

VNoru
Associate

I would have expected CubeMX to include/generate a line, for example like:

LL_DMA_SetPeriphAddress(DMA1, LL_DMA_CHANNEL_3, LL_USART_DMA_GetRegAddr(USART3, LL_USART_DMA_REG_DATA_RECEIVE) );

2 REPLIES 2
TDK
Guru

These are set up in the HAL_UART_Receive_DMA call which is in user code.

If using LL, you own that part.

If you feel a post has answered your question, please click "Accept as Solution".
VNoru
Associate

Thank you for answer, but I submitted this as a bug-report because I think MX should set the correct circular mode DMA device address -- it is counter intuitive for me that is does not when given all the necessary input. Currently this part is like if you have GUI tool for making the configuration, but then you have to use a text editor to repeat the same configuration settings...

My code currently includes LL_DMA_SetPeriphAddress, LL_DMA_SetMemoryAddress and LL_DMA_SetDataLength.

On the other hand: HAL_UART_Receive_DMA is not applied nor needed in the "user code" for circular mode DMA.