AnsweredAssumed Answered

DMA UART with HAL remain busy bug

Question asked by duquesne.joachim.001 on Apr 10, 2017
Latest reply on Apr 11, 2017 by duquesne.joachim.001

Hi everyone,

 

I've been struggling with a problem a few years ago.

I want to send data to my computer via uart and to free the mcu, I need it to be done with dma.

The problem was, the first transmission worked fine but I couldn't send a second transmission.

When running my nucleo (f411re) under gdb, I could see that the second transmit never started because huart->gState remain set to HAL_UART_STATE_BUSY_TX.

I modify the stm32f4xx_hal_uart.c source code for the stm32cubeMX HAL library and it worked well.

Today, I start a new project and I realize that 2 years later this bug is still there with the latest HAL library !!!

 

Here is my modified uart source code. The changes are around line 2000

 

Could someone from ST confirm that it is indeed an error in the library or I'm misusing the dma somehow...

Attachments

Outcomes