[STM32F1] 串口连续大数据传输时经常丢字节,不知道是缓冲还是中断配置问题

[复制链接]
299|10
帛灿灿 发表于 2025-10-1 08:53 | 显示全部楼层 |阅读模式
短数据包发送没问题,长包发送时偶尔掉字节。尝试调整波特率和中断优先级,但问题仍然存在,好像串口在“偷懒”,无法稳定传输大量数据。
Clyde011 发表于 2025-10-1 08:59 | 显示全部楼层
工具端也可能影响稳定性,不一定完全是芯片或代码问题。
公羊子丹 发表于 2025-10-1 09:00 | 显示全部楼层
中断处理函数如果占用太久,会导致丢包,我之前就是这个原因。
周半梅 发表于 2025-10-1 09:01 | 显示全部楼层
使用DMA搬运数据通常能大幅减少丢包问题,尤其是长数据传输。
 楼主| 帛灿灿 发表于 2025-10-1 09:02 | 显示全部楼层
波特率过高时,如果板子或线缆不够好,也容易丢包。
童雨竹 发表于 2025-10-1 09:03 | 显示全部楼层
是否启用了硬件流控?没启用的话容易在大数据下丢字节。
万图 发表于 2025-10-1 09:04 | 显示全部楼层
环形缓冲区设计有助于稳定连续传输。
Wordsworth 发表于 2025-10-1 09:05 | 显示全部楼层
ISR里不要做耗时操作,否则容易被中断抢占。
Bblythe 发表于 2025-10-1 09:06 | 显示全部楼层
我曾经改过时钟源才让串口稳定,你可以检查一下。
Pulitzer 发表于 2025-10-1 09:07 | 显示全部楼层
TX/RX缓存大小也会影响长数据传输的可靠性。
Uriah 发表于 2025-10-1 09:08 | 显示全部楼层
压力测试时观察丢包率很关键,平时短包可能不会显现问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

164

主题

6174

帖子

0

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