Skip to main content
Associate III
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?

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.3
AScha.3Best answer
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.

 

"If you feel a post has answered your question, please click ""Accept as Solution""."