2020-11-30 01:02 AM
Hi,
Recently I bought a STM32H755ZI Development Board and would like to use it for UART RX with DMA. I used CubeMX to generate the project and everything worked fine with the function "UART_RECEIVE_IT()" but never worked with UART_RECEIVE_DMA(). I've debugged it and I found that the DMA Block kept returning TE (Transfer error).
I've also checked lots of online tutorial and even compared it to my previous project with STM32F769NI (Which I successfully used the UART DMA function with). I'm quite sure everything settings of UART and DMA are the same as those tutorials I've searched.
And there is one interesting thing I've found.
I checked those sample projects included in the Firmware Pack of STM32H7 series. And I can only find examples for UART DMA in files of single-core MCU such as STM32H743 but dual-core MCU such as STM32H747.
Is there any solution or example that someone could offer? That would be a great help. Thanks.
2020-11-30 02:23 AM
Hi @TCHIA
You can refer to the example in STM32CubeH7 firmware (STM32Cube_FW_H7_V1.8.0\Projects\NUCLEO-H743ZI\Examples\UART\UART_TwoBoards_ComDMA) and it can be easily tailored to STM32H747 or STM32H755 ( set option byte BOOT_CM4=0 to disable the CM4 core)
Bouraoui
2020-11-30 05:03 AM
Pay attention to the memory region the buffer needs to reside in, and that SRAMs might need their clocks enabled.