STM32踩坑--串口发送乱码

一、发现问题

今天在STM32F407新板子上测试串口时,发现发送数据一直乱码。

二、解决问题

针对STM32F407系列校准PLLCLK时钟:

①由 时钟树 可以看出PLLCLK=HSE(高速外部时钟)*N/(M*P)。因为SYSTICK一般取最高的时钟168M,也就是PLLCLK=168M。

②校准HSE时钟。在 stm32f4xx.h 文件中,找到 HSE_VALUE 将他改成8M,我这里之前是25M,是错误的,因为我的板子上是8M的晶振。

③改N、M、P的值。在 system_stm32f4xx.c 文件中,分别找到跟芯片型号对应的PLL_M、PLL_N、PLL_P。这里我是保持PLL_N、PLL_P的值不变,改PLL_M的值,使PLLCLK=168M。

改之前:

改之后:

三、总结

在使用新板子之前,需要先校准下系统时钟。

相关推荐
somi732 分钟前
ARM-12-I.MX6U LCD
arm开发·单片机·嵌入式硬件·自用
bubiyoushang8881 小时前
基于STM32的心电采集系统设计
stm32·单片机·嵌入式硬件
笨笨饿2 小时前
26_为什么工程上必须使用拉普拉斯变换
c语言·开发语言·人工智能·嵌入式硬件·机器学习·编辑器·概率论
youcans_2 小时前
【STM32-MBD】(18)Clarke / Park 坐标变换链路
stm32·单片机·嵌入式硬件·matlab·代码生成
F137298015572 小时前
WD5208S 非隔离降压功率开关:集成650V MOSFET,220V降12V,5V,700MA
stm32·单片机·嵌入式硬件·51单片机
KOYUELEC光与电子努力加油2 小时前
JAE日本航空电子推出满足汽车市场小型防水最新需求的MX80系列连接器
服务器·科技·单片机·汽车
Zeku2 小时前
虚拟机网络设置
网络·stm32·freertos·linux驱动开发·linux应用开发
记录无知岁月2 小时前
【STM32】HAL库常用外设使用速查
stm32·单片机·cubemx
给点sun,就shine2 小时前
示波器入门
单片机·嵌入式硬件
panamera122 小时前
通信协议SPI、IIC、UART、CAN及编码
单片机·嵌入式硬件