Hi all,
I've been trying to get DMA working on UART0. I've done memory to memory DMA, which seems to work.
However when I try to set up for UART0, I see one character appearing, and then it stops.
I have a callback set up for the interrupt on the DMA channel, and it does get called, and the END bit is set, however I only received the first character.
The DMA channel is set to 12 (UART_TX), I specify the UART0 DR register as the address (after converting the memory address space.
I tried setting the DMACR register on the UART to 0x07, but that also does nothing.
Any pointers?
I tried looking into the Circle code, but that only seems to implement DMA on SPI and I2S.
Regards,
Rene
I've been trying to get DMA working on UART0. I've done memory to memory DMA, which seems to work.
However when I try to set up for UART0, I see one character appearing, and then it stops.
I have a callback set up for the interrupt on the DMA channel, and it does get called, and the END bit is set, however I only received the first character.
The DMA channel is set to 12 (UART_TX), I specify the UART0 DR register as the address (after converting the memory address space.
I tried setting the DMACR register on the UART to 0x07, but that also does nothing.
Any pointers?
I tried looking into the Circle code, but that only seems to implement DMA on SPI and I2S.
Regards,
Rene
Statistics: Posted by renebarto — Sun Sep 14, 2025 8:41 pm