STM32
登录
直播中
麦特拉布
12年用户
1044经验值
私信
关注
[问答]
如何解决STM32发送的数据与串口助手上面显示数据不一致的问题?
开启该帖子的消息推送
如何解决
STM32
发送的数据与串口助手上面显示数据不一致的问题?
回帖
(1)
戴双宝
2021-12-9 11:15:21
问题描述:
STM32发送的数据与串口助手上面显示的数据不一致
硬件平台
:STM32F4的主控板
参数配置
:串口波特率115200,无校验,一位停止位
STM32初始化的波特率是115200(然而并不是115200)
问题分析:
经过调试发现:
板子上的晶振不是常见的8M晶振,而是10M晶振,这就导致经过初始化之后的主时钟并不是168M,然后在经过倍频、分频后,导致USART外设的时钟并不是自己期望的时钟。最终导致的结果就是,我以为我初始化的时115200的波特率,其实并不是,进而导致发送的数据与显示的数据不一致
解决方案:
1> 在“stm32F4xx.h”中找到
将8000000改为10000000,高速外部时钟源改为10M
2>在system_stm32f4xx.c中找到PLL Parameters配置这一部分,
设置PLL_M、PLL_Q、PLL_N、PLL_P的值使外设的时钟符合自己预期的时钟
其中PLL_M、PLL_Q、PLL_N、PLL_P的作用如图中所示
问题扩展:
经过上面的分频与倍频得到的是系统主时钟源168M,后面的各级时钟的分频系数在哪里配置呢?
在system_stm32f4xx.c中找到
这里的HCLK、PCLK2、PCLK1对应图中:
问题描述:
STM32发送的数据与串口助手上面显示的数据不一致
硬件平台
:STM32F4的主控板
参数配置
:串口波特率115200,无校验,一位停止位
STM32初始化的波特率是115200(然而并不是115200)
问题分析:
经过调试发现:
板子上的晶振不是常见的8M晶振,而是10M晶振,这就导致经过初始化之后的主时钟并不是168M,然后在经过倍频、分频后,导致USART外设的时钟并不是自己期望的时钟。最终导致的结果就是,我以为我初始化的时115200的波特率,其实并不是,进而导致发送的数据与显示的数据不一致
解决方案:
1> 在“stm32F4xx.h”中找到
将8000000改为10000000,高速外部时钟源改为10M
2>在system_stm32f4xx.c中找到PLL Parameters配置这一部分,
设置PLL_M、PLL_Q、PLL_N、PLL_P的值使外设的时钟符合自己预期的时钟
其中PLL_M、PLL_Q、PLL_N、PLL_P的作用如图中所示
问题扩展:
经过上面的分频与倍频得到的是系统主时钟源168M,后面的各级时钟的分频系数在哪里配置呢?
在system_stm32f4xx.c中找到
这里的HCLK、PCLK2、PCLK1对应图中:
举报
更多回帖
rotate(-90deg);
回复
相关问答
UART调试
助手
接收到
数据
和M482
发送
的
不一致
是怎么回事?
2023-06-16
268
串口
通信收到的
数据
和程序
发
的
数据
不一致
2019-10-16
6063
stm32
串口
收发问题
2018-07-20
2219
MAX
一
直
显示
IP
不一致
怎么解决
2020-09-04
2522
STM32
串口
使用DMA方式进行接收,打印的
数据
和
发送
的
数据
不一致
2019-03-07
7015
STM32
串口
发送
数据
给PC机
数据
不一致
2018-09-03
9680
如
何解
决
stm32
H7 DMA
串口
发送
数据一致
性问题?
2021-12-06
560
CAN两机通讯出现问题,两个
STM32
通过CAN通讯,测得RX TX波形
不一致
,请问能看出什么问题吗?
2018-08-07
10053
Labview无法收到
stm32
发
来的
数据
2019-04-18
3974
labview和agilent4294
数据
的
不一致
问题
2020-09-11
2012
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
英国威廉希尔公司网站
william hill官网 版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分