Showing results for 
Search instead for 
Did you mean: 

Program hangs after calling HAL_UART_Transmit_DMA

Associate III


I'm using AzureRTOS on a STM32H743ZI. I have a low priority task that is sending data via UART every 100ms (115200 baud). I would like to send this data with HAL_UART_Transmit_DMA, but after calling this function, the program stucks in the function "UART_WaitOnFlagUntilTimeout". I can see taht the HAL_GetTick() function always return the same value. I debugged a little bit and found out that the HAL_TIM_PeriodElapsedCallback is not calles any more (it is a the beginning), and therefore the HAL_IncTick() function is not called. I didn't change anything on the NVIC settings - do you have any idea whats going on here?

Thanks and best regards!

Bob S

You say the HAL_TIM_PeriodElapsedCallback is not called "any more".  So it starts working and then stops?  Are the timer settings somehow getting changed?  Or the timer IRQ getting disabled?  Check the timer and NVIC registers.  Which timer are you using for the HAL tick clock?  Are you trying to use that timer for something else?