[STM32F4] STM32F4 使用 HAL 库 UART,发生溢出 (ORE) 后系统卡死

[复制链接]
292|32
时光迷宫 发表于 2026-8-17 19:41 | 显示全部楼层
检查RX缓冲区大小,确保足够大,避免数据堆积。同时,考虑使用DMA接收,减少中断处理压力。
alvpeg 发表于 2026-8-20 12:01 | 显示全部楼层
HAL库默认的中断处理逻辑不完整,未能清除ORE标志,导致中断反复触发,系统看起来就像“卡死”了一样。
eefas 发表于 2026-8-20 15:01 | 显示全部楼层
在UART1中断入口添加GPIO翻转标记,用示波器观测中断触发频率,确认是否出现中断反复触发的死循环,快速定位卡死的直接诱因。
youtome 发表于 2026-8-21 14:36 | 显示全部楼层
在捕获到 ORE 错误后,主动禁用该 UART 的接收中断,并将 UART 状态强制复位。
ForgottenRealm 发表于 2026-8-21 17:15 | 显示全部楼层
看来你遇到了HAL库UART溢出的问题,清除标志位顺序对了但还卡死,试试检查中断优先级,或者直接操作SR寄存器看看。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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