打印
[STM32F1]

外部晶振与内部晶振频率一致

[复制链接]
1425|44
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhaoxqi|  楼主 | 2022-11-5 21:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
外部晶振与内部晶振频率一致

使用特权

评论回复
沙发
juventus9554| | 2022-11-5 21:59 | 只看该作者
什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
zhaoxqi|  楼主 | 2022-11-5 22:01 | 只看该作者

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

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

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

使用特权

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

使用特权

评论回复
5
zwll| | 2022-11-6 14:06 | 只看该作者
乱码是你波特率没设置对。

使用特权

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

使用特权

评论回复
7
huangchui| | 2022-11-6 14:10 | 只看该作者
外部晶振不会不稳定的,一般是内部的不太准

使用特权

评论回复
8
llljh| | 2022-11-6 14:12 | 只看该作者
上示波器吧,看一下就知道了

使用特权

评论回复
9
juventus9554| | 2022-11-6 14:15 | 只看该作者
乱码一般就是波特率的问题。前提是双方约定的数据格式是一致的。

使用特权

评论回复
10
dingy| | 2022-11-6 14:21 | 只看该作者
外部16MHZ  只变”配置为HSE, PLLMULL4“这个参数是不够的

使用特权

评论回复
11
jiajs| | 2022-11-6 14:23 | 只看该作者
STM32还有一个参数,就是你得告诉软件你的外部晶体用的是多少MHZ的

使用特权

评论回复
12
liliang9554| | 2022-11-6 14:26 | 只看该作者
这个参数HAL库一般是在文件stm32f1xx_hal_conf.h文件中定义

使用特权

评论回复
13
huangchui| | 2022-11-6 14:28 | 只看该作者
参数就是  HSE_VALUE(外部) 和 HSI_VALUE(这个是内部) 这里你看下HSE_VALUE 是否是16000000

使用特权

评论回复
14
pengf| | 2022-11-6 14:31 | 只看该作者

需要波特率和其他校验都一样的。

使用特权

评论回复
15
pengf| | 2022-11-6 14:36 | 只看该作者

是不是波特率的问题?

使用特权

评论回复
16
heweibig| | 2022-11-6 14:41 | 只看该作者
波特率设置的问题,或者代码的问题。

使用特权

评论回复
17
wyjie| | 2022-11-6 14:44 | 只看该作者
楼主自己设置的不对啊

使用特权

评论回复
18
stly| | 2022-11-6 15:23 | 只看该作者
这个楼主是如何确定的呢?

使用特权

评论回复
19
zhaoxqi|  楼主 | 2022-11-6 15:26 | 只看该作者
其实还是不大明白,我再琢磨琢磨吧,多谢了哈

使用特权

评论回复
20
Bowclad| | 2022-11-6 21:35 | 只看该作者
乱码一般就是波特率的问题

使用特权

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

本版积分规则

808

主题

10636

帖子

4

粉丝