[其它应用] SH79F1616在115200波特率通信时每隔几十字节就出错。。

[复制链接]
2697|8
 楼主| powerantone 发表于 2025-5-7 16:49 | 显示全部楼层 |阅读模式
SH79F1616在115200波特率通信时每隔几十字节就出错,降低到57600波特率后通信正常,这是否与UART模块的时钟分频有关?如何排查和解决?
OceanGaze 发表于 2025-5-8 09:24 | 显示全部楼层
从楼主的描述上来看,像是波特率时钟偏差导致的。
看看是不是内置晶振的偏差过大导致的问题,把修正值更新一下试试
flycamelaaa 发表于 2025-5-13 13:37 | 显示全部楼层
检查SH79F1616的UART模块时钟分频设置,确保分频系数计算正确,并且与系统时钟匹配。
stormwind123 发表于 2025-5-13 13:37 | 显示全部楼层
可以考虑使用外部晶振来提供更稳定的时钟源。
probedog 发表于 2025-5-13 13:37 | 显示全部楼层
降低波特率
classroom 发表于 2025-5-13 13:38 | 显示全部楼层
检查通信线路是否存在干扰、阻抗不匹配或信号衰减等问题。
duo点 发表于 2025-5-13 13:38 | 显示全部楼层
查阅SH79F1616的数据手册。
老橘树下的桥头 发表于 2025-7-17 21:07 | 显示全部楼层
把知道的都列出来
晶振精度不足:内部 RC 振荡器误差大(±5%),需外接高精度晶振(≤±0.5%)。
波特率误差超限:通信波特率误差应<2%,需检查 BRG 寄存器配置及计算公式。
干扰问题:未隔离的 RS232/TTL 转换芯片易受干扰,建议增加磁珠或光耦隔离。
接收缓冲区溢出:中断处理不及时导致 FIFO 溢出,需优化中断服务程序,确保数据及时处理。
电源稳定性:电源纹波过大(>50mV)会影响通信稳定性,需添加滤波电容。

一点点晚风 发表于 2025-9-25 17:17 | 显示全部楼层
SH79F1616 在 115200 波特率下通信每隔几十字节出错,可能是时钟精度不足,波特率误差超 5%;或中断优先级不合理,接收中断被抢占;也可能是缓冲区溢出,未及时读取数据;还可能硬件布线干扰,需检查晶振、优化中断、增大缓冲区、加强信号完整性。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

679

主题

4015

帖子

4

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