[STM32G0] 串口DMA接收数据出现间歇丢字节情况调试无头绪

[复制链接]
174|10
周半梅 发表于 2025-10-4 07:25 | 显示全部楼层 |阅读模式
用DMA方式接收串口数据时,偶尔会出现丢字节的现象,数据看起来像是掉包了一样。尝试过关掉中断和切换波特率,但问题还是随机发生。现在就像设备偶尔偷懒一下,不知道是不是缓冲区没处理及时。
Clyde011 发表于 2025-10-4 07:31 | 显示全部楼层
波特率调低后还是丢,那可能真不是线的问题,得看软件。
公羊子丹 发表于 2025-10-4 07:32 | 显示全部楼层
你有没有尝试用环形缓冲区加上空闲中断?我以前靠这个解决过。
 楼主| 周半梅 发表于 2025-10-4 07:33 | 显示全部楼层
我怀疑可能是DMA缓冲区太小了,数据量大时很容易丢。
帛灿灿 发表于 2025-10-4 07:34 | 显示全部楼层
是不是上位机发数据太快了,接收端还没来得及处理?
童雨竹 发表于 2025-10-4 07:35 | 显示全部楼层
有时候HAL库的回调不够稳定,直接用寄存器操作更可靠。
万图 发表于 2025-10-4 07:36 | 显示全部楼层
你试试在调试模式下跑一段时间,看看能不能复现。
Wordsworth 发表于 2025-10-4 07:37 | 显示全部楼层
我记得G0系列DMA有点小坑,文档里提到过边界条件。
Bblythe 发表于 2025-10-4 07:38 | 显示全部楼层
换个串口口子测一下?有时候不是代码,是某个外设本身。
Pulitzer 发表于 2025-10-4 07:38 | 显示全部楼层
我之前掉包是因为线太长,后面加了个隔离芯片就稳定了。
Uriah 发表于 2025-10-4 07:39 | 显示全部楼层
要不要用逻辑分析仪抓一下,看是丢在总线上还是内部。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

167

主题

6128

帖子

1

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