|
6844| 6
|
STM32F407使用HAL库做DMA发送数据到串口时系统老是重启 |
|
2金钱
最佳答案粗粗看了你的程序,调用应该是没有问题的。但是流程有点问题,HAL_UART_Transmit_DMA是个异步调用。函数返回其实DMA还在工作。你之后立刻调用的 if(__HAL_DMA_GET_FLAG(&hdma_usart1_tx,DMA_FLAG_TCIF3_7))返回会失败,所以你并没有等到DMA结束并关闭DMA就往下走了。之后可能会再次调用HAL_UART_Transmit_DMA,会造成错误。
| ||
|
提示: 作者被禁止或删除 内容自动屏蔽
| |
|
提示: 作者被禁止或删除 内容自动屏蔽
| |
|
| |
| ||
| ||
| ||
/1
|手机版|OpenEdv-开源电子网
( 粤ICP备12000418号-1 )
GMT+8, 2026-3-23 15:57
Powered by OpenEdv-开源电子网
© 2001-2030 OpenEdv-开源电子网