[STM32F1] stm32f103用485与pc通讯总有几个不对的数据包

[复制链接]
 楼主| 田舍郎 发表于 2025-3-26 23:05 来自手机 | 显示全部楼层 |阅读模式
通讯很简单,pc下发指令,103回复adc转换的结果,没有协议,只是发两个字节的adc结果。误码现象是发送00 00时总夹杂一些80 00 或00 80。传输线一米五,波特率115200。仿真跟踪103发出的数据是正确的,接收端有错误。不知道是不是传输线引入的干扰?
jcky001 发表于 2025-3-28 11:59 | 显示全部楼层
换质量更好的传输线,或使用带屏蔽层的RS485传输线。
cr315 发表于 2025-3-28 12:07 | 显示全部楼层
RS485转换器可能存在质量问题或配置不当。
elephant00 发表于 2025-3-28 12:08 | 显示全部楼层
STM32F103的串口配置可能存在问题,如波特率设置错误、数据位/停止位/校验位不匹配等。
cooldog123pp 发表于 2025-3-28 13:33 | 显示全部楼层
不对么很正常啊,做CRC么把不对的撇掉,如果不对太平凡就要看下硬件是否稳定。
香水城 发表于 2025-4-23 11:58 | 显示全部楼层
波特率放低点试试?

另外线搞短点比较测试下;
白马过平川 发表于 2025-4-24 01:23 | 显示全部楼层
那你就加协议呗,这样也许会好一些

失物招領 发表于 2025-4-24 02:35 | 显示全部楼层
传输线过长(1.5 米虽在 115200 波特率下理论可行,但未屏蔽或未双绞时易受干扰)

她已醉 发表于 2025-4-24 03:27 | 显示全部楼层
终端电阻未匹配(RS485 需在总线两端接 120Ω 终端电阻)

将爱藏于深海 发表于 2025-4-24 04:39 | 显示全部楼层
有可能是共模干扰(地线噪声导致电平漂移)

故意相遇 发表于 2025-4-24 05:37 | 显示全部楼层
STM32 RS485 收发器(如 MAX485)电源不稳定可能导致信号抖动

春日负喧 发表于 2025-4-24 06:48 | 显示全部楼层
建议楼主可以选择使用线性稳压电源(如 LDO)而非开关电源(DCDC)为 RS485 收发器供电

温室雏菊 发表于 2025-4-24 07:34 | 显示全部楼层
若方向控制信号(DE/RE)切换延时不足,可能导致总线冲突或数据截断

西洲 发表于 2025-4-24 08:45 | 显示全部楼层
在发送完成后延迟 至少 1 个字节时间 再切换为接收(115200 波特率下 1 字节 ≈ 87μs

风凉 发表于 2025-4-24 09:32 | 显示全部楼层
STM32 UART 波特率误差过大可能导致误码(尤其是 115200 等高波特率)

捧一束彼岸花 发表于 2025-4-24 10:23 | 显示全部楼层
无校验机制时,干扰直接导致数据错误

您需要登录后才可以回帖 登录 | 注册

本版积分规则

90

主题

2089

帖子

2

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