打印
[APM32F1]

串口溢出标志位的作用

[复制链接]
188|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
串口溢出标志位的作用
在看论坛的发帖,最近有多篇关于串口数据通讯的讨论。我也来掺和一下,分享一篇串口溢出标志位的应用的帖子。
APM32F103在设计之初,将串口溢出事件与窗口中断线相连,当串口接收发生数据接收处理不及时时,触发串口溢出中断(OVRE**),也可以通过查询状态寄存器USART_STS的bit[3]位是否置位来判断。




溢出标志位的核心作用
  • 检测数据丢失风险‌
    当接收寄存器(USART_DATA)未及时读取且新数据到达时,OVRE**位被置1,提示数据可能丢失。
  • ‌维护中断机制稳定性‌
    未清除的OVRE**标志会阻塞后续接收中断,需在中断服务中优先处理该标志以恢复中断响应能力

APM32厂家定不会平白无故的增加一个标志位,那么窗口溢出标志位都用在哪些应用场景呢?
  • 高负载通信系统‌
    在频繁收发数据的场景(如传感器网络、工业控制),OVRE**标志用于触发流量控制策略(如降低波特率或协议分帧)
  • ‌实时监控与调试‌
    通过统计ORE事件次数,评估系统通信负载瓶颈,优化数据吞吐量。
  • ‌容错处理‌
    溢出时自动丢弃无效数据并重置接收链路,避免错误数据影响控制逻辑

最后,还是提醒大家,虽然平时很少遇到串口溢出,但这个溢出错误中断一定要处理。

使用特权

评论回复
沙发
Chad1989| | 2025-6-5 16:55 | 只看该作者
过载错误标志是OVER**还是OVRE**?我的英文水平瞬间让我不知道这啥单词。

使用特权

评论回复
板凳
jobszheng| | 2025-6-5 22:13 | 只看该作者
这么多的星星 也真是无奈啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

17

帖子

0

粉丝