[STM32C0] 使用内部RC振荡时串口波特率偏差明显

[复制链接]
236|10
Clyde011 发表于 2025-11-8 07:20 | 显示全部楼层 |阅读模式
项目空间有限没加晶振,用内部HSI16做时钟。结果串口设115200时,实际通讯误码率很高。试过用低波特率还好些,但高波特率就容易花。看起来像RC漂移问题。
 楼主| Clyde011 发表于 2025-11-8 07:22 | 显示全部楼层
这个问题在批量生产时得注意,每片偏差都不一样。
公羊子丹 发表于 2025-11-8 07:23 | 显示全部楼层
这个现象挺常见,内部RC确实不太准。
周半梅 发表于 2025-11-8 07:24 | 显示全部楼层
你可以用自动校准功能,参考LSI或外部时钟。
帛灿灿 发表于 2025-11-8 07:26 | 显示全部楼层
我加了一个1pps信号校准HSI,效果好很多。
童雨竹 发表于 2025-11-8 07:27 | 显示全部楼层
也可能是温度变化太大,RC飘得厉害。
万图 发表于 2025-11-8 07:28 | 显示全部楼层
C0系列没外晶振挺尴尬的,只能凑合。
Wordsworth 发表于 2025-11-8 07:29 | 显示全部楼层
我一般用低波特率通讯,稳定多了。
Bblythe 发表于 2025-11-8 07:30 | 显示全部楼层
可以在上电后手动调节HSITRIM寄存器。
Pulitzer 发表于 2025-11-8 07:31 | 显示全部楼层
如果PC端能容忍一点误差,波特率改成111111试试。
Uriah 发表于 2025-11-8 07:32 | 显示全部楼层
也可以考虑用USART自动波特率检测功能。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

185

主题

6250

帖子

0

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