6389| 5
|
HAL库使用串口dma问题 |
10金钱
最佳答案找到解决方法了,查看HAL_UART_Transmit_DMA函数源码,发现在传输完成回调函数中有这么一句:CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);在normal模式下这就关掉了dma传输,然后进入dma中断,所以只要在dma中断中重新打开即可实现重复传输:
SET_BIT(huart2.Instance->CR3, USART_CR3_DMAT);
当然也可以修改库函数,说句意外话不懂这些绕来绕去的回调意义何在,我们这些初学者也不敢乱改,看来还得继续熟悉hal库
...
| ||
明天的你会感谢今天努力奋斗的自己
|
||
| ||
明天的你会感谢今天努力奋斗的自己
|
||
| ||
| ||
| ||
| ||
|手机版|OpenEdv-开源电子网
( 粤ICP备12000418号-1 )
GMT+8, 2025-5-2 22:54
Powered by OpenEdv-开源电子网
© 2001-2030 OpenEdv-开源电子网