Skip to main content
Visitor II
May 7, 2021
Solved

What is your role?

  • May 7, 2021
  • 2 replies
  • 1005 views

void DMA_DoubleBufferModeConfig(DMA_Stream_TypeDef* DMAy_Streamx, uint32_t Memory1BaseAddr,

uint32_t DMA_CurrentMemory)

What is your role?

    This topic has been closed for replies.
    Best answer by Tesla DeLorean

    The related source code from ST is generally also commented explaining some of the outline, use and context.

    Double buffering in ST's naming relates to using Two distinct memory buffers (address, and size) for DMA data into/out-of, and alternating between the two.

    Perhaps like a Ping-Pong concept that walks through memory as it would allow you to change the address of the inactive buffer, whilst the DMA unit deals with the active one.

    2 replies

    Graduate II
    May 7, 2021

    Find out by descrambling the HAL/MX obfuscator by reading the reference manual carefully.

    Super User
    May 7, 2021

    > What is your role?

    I don't understand, try to describe your question in more detail.

    This is SPL, not Cube/HAL; but the point is the same: the ultimate information source is the Reference Manual for given STM32.

    JW

    Graduate II
    May 7, 2021

    The related source code from ST is generally also commented explaining some of the outline, use and context.

    Double buffering in ST's naming relates to using Two distinct memory buffers (address, and size) for DMA data into/out-of, and alternating between the two.

    Perhaps like a Ping-Pong concept that walks through memory as it would allow you to change the address of the inactive buffer, whilst the DMA unit deals with the active one.