您尚未登录。

楼主 # 2022-08-06 22:55:18

游乐场
会员
注册时间: 2022-07-29
已发帖子: 54
积分: 172

【调试记录】测试串口,解决两种串口乱码问题

今天下午200M晶振到手,焊上去重新分配了一下线程时钟,测了一下延时,果然舒服多了。

但是测串口的时候9600和921600乱码了,而115200和25600正常,咨询了官方老哥之后才知道两种乱码原因还不一样。

首先来看一下串口初始化代码。
.png

引脚部分很简单,照着例子改就行,核心是三个频率:时钟分频、外设时钟、波特率。

外设时钟=系统时钟/时钟分频

我用的外部有源晶振做系统时钟200M,分频256,所以外设时钟=200000000/256=781250。

那么如何确定系统分频呢(敲黑板),我的串口乱码就是因为分频错了。官方说明是 外设时钟/波特率 的结果最好在100到200之间。

我的9600乱码是因为当时时钟分频选了64,外设时钟/波特率 超过了255,溢出了。
921600乱码是因为当时时钟分频也选了64,外设时钟/波特率 才3点多,不够。

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn