2025-07-15 6:35 AM
Hello,
I am currently working on implementing a memory-to-memory DMA transfer on a STM32N6 board, but I have trouble making the DMA work (GPDMA or HPDMA).
I tried to follow the Reference Manual for a LL implementation, but my code doesn't work and I can't find why.
I'm a beginner in using DMAs but I still managed to make the DMA work on smaller STM32s such as the STM32F411RE, by following the User Manual, but on STM32N6, it does not work.
You can find my code on the figure below. I have 8 bytes to transfer between two buffers in a secured AXISRAM2 memory space. I chose to transfer bursts such that 1 burst = 1 beat = 1 byte. I chose HPDMA because I am transferring data in AXISRAMs (I assumed it wouldn't work with GPDMA since it is adapted to AHB/APB).
When I debug my code I can see that the Transfer Complete Flag in the Status Register was enabled but my destination buffer is still empty (it didn't copy the source buffer).
Do you have any advice on why my code doesn't work ?
Thanks !