3219| 2
|
IAP 跳转后,USART DMA收发不正常。 |
20金钱
最佳答案问题找到了,是我BootLoader使用了IDLE这个中断去接收不定长度字符,然后在跳转的时候,其实我有去清除中断标志位且关闭IDLE中断,但是在清除中断的时候我用错了函数
一开始我使用的函数是__HAL_UART_CLEAR_FLAG(&huart,UART_FLAG_IDLE);
但是我后面又仔细的去找了一下官方的库,发现里面居然有一个这个函数
__HAL_UART_CLEAR_IDLEFLAG
原来这个才是清除IDLE标志位的函数。
那之前为什么DMA收发一次,就不能正常收发就明了了 ...
| ||
| ||
| ||
|手机版|OpenEdv-开源电子网
( 粤ICP备12000418号-1 )
GMT+8, 2025-6-11 07:19
Powered by OpenEdv-开源电子网
© 2001-2030 OpenEdv-开源电子网