cancel
Showing results for 
Search instead for 
Did you mean: 

STM32H750VB_UART_DMA_Mode

nanotronicsnss
Associate II

I have enabled DMA for usart2 in pins PD5 and PD6 and I have attached my main file. I have tried uart transfer by polling mode and interrupt mode both are working fine. But when I try for DMA mode the data is not transferring .I don't know where I have done the mistake. Kindly guide me for transferring data through DMA...i am using CUBEMX and CUBE IDE...

7 REPLIES 7

Double check your initialization code, that it associates the right DMA triggers, and you have the IRQ Handler in place.

Check the peripheral registers and clocks, vs Reference Manual.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Tilen MAJERLE
ST Employee

Please check where is DMA memory. It must not be in the DTCM RAM (default location) since DMA has no access there.

See here: https://community.st.com/s/article/FAQ-DMA-is-not-working-on-STM32H7-devices

Hi,

Thanks for the reply.. i have studied the link u have provided and I don't understand how to access the Txbuffregister address using cubeide.

You have to create a linker script section and then add your buffer to this section.

Section must be in the RAM that is accessible by DMA.

Sort of thing a Code Generator should flag/address auto-magically..

Also MPU configuration, and cache-coherency code

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Vel
Associate III

Hi nanotronicsnss ,

Here underlined the TX buff address..

0693W00000AOFUiQAP.png 

Are you enabled the UART interrupt? and one more thing 1st use Normal mode instead of Circular mode in DMA config it will helpful to understand to you.

Change the TX buffer address using linker script .. see the example 2 in below mentioned link.. You can use any one method to solve your pblm..

https://community.st.com/s/article/FAQ-DMA-is-not-working-on-STM32H7-devices

refer this page. It will helpful to solve your issue..

Thanks,

vel

nanotronicsnss
Associate II

Hi Vel,

Thanks for ur answer..i have changed the DMA address and have obtained DMA transmit