cancel
Showing results for 
Search instead for 
Did you mean: 

fifo error on direct mode DMA

ogriz
Associate

Hi there,

I'm using stm32F411 MCU

I configured the UART6 to transmit data with DMA.

Once in a while i'm getting FIFO ERROR from the DMA even though i'm using direct mode and not FIFO mode.

Although the error occur, the data is still transfer successfully.

what can cause this error?

thanks.

3 REPLIES 3
T J
Lead

I checked your chip, this is not trivial.

mode 1 or mode 2 ?

surely you can find an example of the schematic

ogriz
Associate

this is the configuration of the DMA i use for RX:

hdma_rx.Init.Direction = DMA_PERIPH_TO_MEMPRY;

hdma_rx.Init.PeriphInc = DMA_PINC_DISABLE;

hdma_rx.Init.MemInc = DMA_MINC_ENABLE;

hdma_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;

hdma_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;

hdma_rx.Init.Mode = DMA_CIRCULAR;

hdma_rx.Init.Priority = DMA_PRIORITY_LOW;

hdma_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE;

Other than that, i'm using STM32 standard HAL driver for receiving from uart.

the HAL driver version is 1.18

thanks

For explanation, see AN4031, chapter 4.3 Software sequence to enable DMA.

JW