Skip to main content
Explorer II
July 18, 2025
Question

Destination buffer not being updated- DMA standard mode - STM32N6

  • July 18, 2025
  • 2 replies
  • 277 views

Hello again,

The DMA now works in standard request mode with circular mode disabled, but it doesn't when I am trying to use circular buffering mode (my destination buffer only contains 0s).

ClemR_0-1752829546381.png

ClemR_1-1752829571635.png

I defined manually the data size, the source and destination addresses in my code once my memory buffers are defined. Once these parameters defined I enable the GPDMA.

Here are the lines I add in the main() :

LL_DMA_ConfigAddresses(GPDMA1, LL_DMA_CHANNEL_0, p_dma_buffer, m_dma_buffer);

LL_DMA_SetBlkDataLength(GPDMA1, LL_DMA_CHANNEL_0, 8);

LL_DMA_EnableChannel(GPDMA1, LL_DMA_CHANNEL_0);

 

 

But when I launch the debug only the parameters I set manually were taken into account. All the CubeMX Configuration doesn't appear here (for example DINC and SINC should be at 1 in GPDMA_C0TR1 in the image below) ...

ClemR_2-1752830041582.png

Do you have any idea of what I should do to use circular buffering in standard request mode?

I saw in the user manual an example of application for circular buffering using linked-lists. Is it possible to do circular buffering without linked lists ? 

 

Thanks

 

 

 

 

    This topic has been closed for replies.

    2 replies

    ST Employee
    July 18, 2025

    This post was moved from this related thread: Solved: GPDMA & HPDMA on STM32N6 - STMicroelectronics Community

    ST Employee
    July 18, 2025

    Hello again @ClemR

    Circular mode is specifically designed for continuous data flows between peripherals and memory, for example in ADC scan mode.