USART Tx DMA on STM32H5
I'm using an STM32H563 and the STM32CubMX for initialisation. I'm trying to use the USART in DMA mode and having trouble with the Tx DMA.
I use:
HAL_UARTEx_ReceiveToIdle_DMA(&huart10, (uint8_t *) uart10RxDMABuffer, UART10_RX_BUFFER_SIZE);
for the receive and get characters into my buffer and an interrupt after IDLE. In the interrupt I start a timer (for a delay). I get the timer interrupt then attempt:
HAL_UART_Transmit_DMA(&huart10, (uint8_t*)uart10TxDMABuffer, uart10TxSize);
This completes with a HAL_OK. But I don't get any characters from the UART and I don't get a transfer complete interrupt.
The DMA of the H5 (M33) is completely different to previous series. Are there any other steps I need to take that are particular to the H5 DMA controller?
Edit:
I've also noticed that if I comment the HAL_UART_Transmit_DMA I can receive multiple strings from the UART Rx and each time get an interrupt on the IDLE. Once I've attempted to call the transmit DMA the receive side stops working.
