2024-01-10 01:38 AM
Hello,
I am currently using bare-metal MP13 solution in CubeIDE. I want to integrate uart with DMA. After configuring DMA settings for uart4, a following fragment of DMA init code has been generated:
NVIC is not available for Cortex-A, but still its functions are being generated.
My question is, how can I properly adjust MX_DMA_Init for uart interrupts without NVIC and code generation?
Do you have any ideas?
Thank you,
Jacek S.
Solved! Go to Solution.
2024-01-12 12:29 AM
Code genereted from IOC will be definitely incorrect, so I wouldn't trust it.
I'm attaching my main.c with most of the necessary changes to make dma-uart work.
2024-01-11 07:27 AM - edited 2024-01-11 11:49 PM
For anyone encountering the same problem here is the solution:
Enable ETZPC and add init function to the main (It won't be generated)
Make sure DMA Init runs before UART Init.
If your compiler doesn't see an assert in a scope, comment it out
Adjust MX_ETZPC_Init:
In the end, correct generated MX_DMA_Init accordingly to your own settings.
Best,
2024-01-11 08:17 AM
Hello @jschneider ,
First, thank you for having shared your solution on the forum, it can help a lot other users.
Can you share us your IOC file in order to replicate on our side, and correct possible issues ?
Kind regards,
Erwan.
2024-01-12 12:29 AM
Code genereted from IOC will be definitely incorrect, so I wouldn't trust it.
I'm attaching my main.c with most of the necessary changes to make dma-uart work.
2024-01-12 12:51 AM
Hello @jschneider ,
Thank your for your sharing, the issue has been reproduced on my side and an internal ticket is opened to solve this. Thank you for having raised it to us.
Kind regards,
Erwan.