Skip to main content
Explorer
May 22, 2025
Solved

The relationship between STM32743 SPI_DMA and D1 RAM

  • May 22, 2025
  • 1 reply
  • 257 views

When using HAL_SPI_Transmit_DMA with STM32743, must the transmission data buffer and reception data buffer be placed in D1 RAM?
Also, is there a way to dynamically allocate D1 RAM? Rather than declaring an array placed in section("D1"), I would like to dynamically allocate it like malloc. Is this possible?

    This topic has been closed for replies.
    Best answer by AScha.3

    >must the transmission data buffer and reception data buffer be placed in D1 RAM?

    see rm , where the different dma's connect to ->

    AScha3_0-1747895618342.png

     

    >is there a way to dynamically allocate D1 RAM

    Note also that if you use ST's STM32CubeIDE that uses GCC and Newlib and has the syscalls layer implemented already.

    in newlib is malloc : 

    #include <stdlib.h>
    void *malloc(size_t nbytes);

     just try it.

     

    1 reply

    AScha.3Answer
    Super User
    May 22, 2025

    >must the transmission data buffer and reception data buffer be placed in D1 RAM?

    see rm , where the different dma's connect to ->

    AScha3_0-1747895618342.png

     

    >is there a way to dynamically allocate D1 RAM

    Note also that if you use ST's STM32CubeIDE that uses GCC and Newlib and has the syscalls layer implemented already.

    in newlib is malloc : 

    #include <stdlib.h>
    void *malloc(size_t nbytes);

     just try it.