OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4786|回复: 3

求助关于STM32F407 串口波特率只有设定值一半的问题

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2019-4-12
在线时间
3 小时
发表于 2019-4-12 16:26:03 | 显示全部楼层 |阅读模式
以下三个地方是我的设定值:


.  USART_Init(USART1, &USART_InitStructure); 初始化函数中设定115200
.  #define HSE_VALUE ((uint32_t)8000000) 我的晶振是8MHz
.  /* PLL_VCO = (HSE_VALUE or HSI_VALUE / PLL_M) * PLL_N */
#define PLL_M 8
/* USB OTG FS, SDIO and RNG Clock = PLL_VCO / PLLQ */
#define PLL_Q 7

#if defined (STM32F40_41xxx)
#define PLL_N 336
/* SYSCLK = PLL_VCO / PLL_P */
#define PLL_P 2
#endif /* STM32F40_41xxx */

#if defined (STM32F427_437xx) || defined (STM32F429_439xx)
#define PLL_N 360
/* SYSCLK = PLL_VCO / PLL_P */
#define PLL_P 2
#endif /* STM32F427_437x || STM32F429_439xx */

#if defined (STM32F401xx)
#define PLL_N 336
/* SYSCLK = PLL_VCO / PLL_P */
#define PLL_P 4
#endif /* STM32F401xx */

我百度了好多,都是提到这三个地方可能导致问题 ,我都改好了(或者还是有问题?) 但和串口助手通讯时 助手设定波特率115200 乱码 设定57600时正常,一直都是。
但修改PLL_M=16时正常了
我用  STM32F4xx-Clock-Configuration-V1.1.0.xls  这个表格自动生成的system_stm32f4xx.c文件代替我自己的,问题照旧。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2019-4-12 20:03:00 | 显示全部楼层
检查下串口对应的时钟频率
业精于勤荒于嬉;行成于思毁于随!
回复 支持 反对

使用道具 举报

109

主题

5564

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10561
金钱
10561
注册时间
2017-2-18
在线时间
1912 小时
发表于 2019-4-12 20:51:26 | 显示全部楼层
这种我这边遇到的多是时钟配置的问题,看仿真器仿真到的系统主频多少?以你代码设置的主频一致不?
回复 支持 反对

使用道具 举报

33

主题

218

帖子

0

精华

高级会员

Rank: 4

积分
568
金钱
568
注册时间
2015-1-12
在线时间
75 小时
发表于 2021-9-9 15:21:16 | 显示全部楼层
也遇到串口波特率差一半的问题了 暂时没找到原因
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-26 23:06

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表