[STM32F1] HAL UART 中断接收用法

[复制链接]
194|64
jf101 发表于 2026-8-4 18:16 | 显示全部楼层
可以批量接收数据
Bowclad 发表于 2026-8-12 21:37 | 显示全部楼层
回调里调用HAL_UART_Receive_IT()之前,先检查HAL_UART_GetState()确保状态为HAL_UART_STATE_READY,别让状态机还没释放就重复调用。
狄克爱老虎油 发表于 2026-8-13 13:44 | 显示全部楼层
回调里检查HAL_UART_GetState,确保状态为IDLE后再重新调用HAL_UART_Receive_IT,这样就不会卡死了。不定长指令可以用空闲中断配合DMA来接收,处理更高效。
班杰明 发表于 2026-8-14 17:23 | 显示全部楼层
先停止中断,检查状态,确保DMA状态是IDLE,再用HAL_UART_Receive_IT重新启动。记得处理完数据后清除空闲中断标志位,避免重复触发。
ForgottenRealm 发表于 2026-8-15 12:53 | 显示全部楼层
在回调里检查HAL_UART_GetState,确认状态为空闲后再调用HAL_UART_Receive_IT。若指令不定长,考虑使用DMA配合空闲中断更高效。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
0