打印
[STM32F1]

串口接收乱码

[复制链接]
1271|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhaoxqi|  楼主 | 2016-11-29 22:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
外部晶振与内部晶振频率一致
沙发
zhenykun| | 2016-11-29 22:47 | 只看该作者
什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
zhaoxqi|  楼主 | 2016-11-29 22:49 | 只看该作者


1、使用内部8M晶振,配置为 HSI_DIV2,PLLMULL16,系统频率64M,串口收发正常。

2、使用外部16M晶振,配置为HSE, PLLMULL4,系统频率也是64M,但串口收发乱码。
(除内部晶振和外部晶振外,其他部分代码没作修改,观察TIMER中断,两套代码中断时间都是一致的)

3、在(2)的情况下,修改PLL倍频4~16,串口收发都是乱码。

使用特权

评论回复
地板
jlyuan| | 2016-11-29 22:50 | 只看该作者
因为两个中断时间一致,可以排除外部晶振不稳定的问题?

使用特权

评论回复
5
天灵灵地灵灵| | 2016-11-29 22:51 | 只看该作者
乱码是你波特率没设置对。

使用特权

评论回复
6
zhaoxqi|  楼主 | 2016-11-29 22:52 | 只看该作者
技术手册里注明,使用HSI的话,最高主频只能到36M,但从TIMER中断来看,系统主频确实是64M的,不知道是否有关系?

使用特权

评论回复
7
heweibig| | 2016-11-29 22:53 | 只看该作者
外部晶振不会不稳定的,一般是内部的不太准

使用特权

评论回复
8
lizye| | 2016-11-29 22:54 | 只看该作者
上示波器吧,看一下就知道了

使用特权

评论回复
9
zhaoxqi|  楼主 | 2016-11-29 22:59 | 只看该作者
嗯,那我按大家的说法挨个排查一下,先结贴啦,谢谢哈

使用特权

评论回复
10
玛尼玛尼哄| | 2016-11-29 23:05 | 只看该作者
乱码一般就是波特率的问题。前提是双方约定的数据格式是一致的。

使用特权

评论回复
11
lt1231| | 2016-11-30 10:09 | 只看该作者
需要波特率和其他校验都一样的。

使用特权

评论回复
12
garylong| | 2017-9-24 20:25 | 只看该作者
zhaoxqi 发表于 2016-11-29 22:49
1、使用内部8M晶振,配置为 HSI_DIV2,PLLMULL16,系统频率64M,串口收发正常。

2、使用外部16M晶振,配 ...

楼主这个问题解决了吗? 我现在也遇到这个问题

使用特权

评论回复
13
一路向北lm| | 2017-9-25 21:15 | 只看该作者
是不是波特率的问题?

使用特权

评论回复
14
junpeng324| | 2017-9-25 21:20 | 只看该作者
波特率设置的问题,或者代码的问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

808

主题

10636

帖子

4

粉丝