stm32卡在SystemClock_Config();的解决方法

在基于 STM32 HAL 库开展代码编写工作时,遇到了一个令人困扰的问题:编译通过的程序下载到开发板后,始终无法正常运行。为了定位问题根源,我使用 Keil 集成开发环境中的 debug 调试功能,逐步跟踪程序执行流程,发现程序卡在了SystemClock_Config();函数处,不再向下执行。​

由于SystemClock_Config();函数主要负责系统时钟的配置,结合以往开发经验,初步判断该问题与时钟配置存在关联。于是,我打开 STM32CubeMX 软件,仔细检查项目中的时钟树设置。时钟树作为可视化配置系统时钟的重要工具,清晰展示了时钟源选择、分频系数等关键参数。​

经过一番排查,发现外部时钟的设置参数与实际开发板上的晶振规格不匹配。开发板所使用的外部晶振频率是固定的,若在 STM32CubeMX 中设置的外部时钟参数与之不符,会导致系统时钟配置错误,进而使程序无法正常运行。在将外部晶振参数修改为与开发板实际参数一致后,重新生成代码并下载到开发板,程序终于摆脱了卡顿状态,开始正常运行。

相关推荐
芯岭技术24 分钟前
PY32F002A单片机 低成本控制器解决方案,提供多种封装
单片机·嵌入式硬件
youmdt1 小时前
Arduino IDE ESP8266连接0.96寸SSD1306 IIC单色屏显示北京时间
单片机·嵌入式硬件
嘿·嘘1 小时前
第七章 STM32内部FLASH读写
stm32·单片机·嵌入式硬件
Meraki.Zhang1 小时前
【STM32实践篇】:I2C驱动编写
stm32·单片机·iic·驱动·i2c
几个几个n4 小时前
STM32-第二节-GPIO输入(按键,传感器)
单片机·嵌入式硬件
Despacito0o7 小时前
ESP32-s3摄像头驱动开发实战:从零搭建实时图像显示系统
人工智能·驱动开发·嵌入式硬件·音视频·嵌入式实时数据库
门思科技7 小时前
设计可靠 LoRaWAN 设备时需要考虑的关键能力
运维·服务器·网络·嵌入式硬件·物联网
慕尘7 小时前
Clion配置51单片机开发环境
单片机
良许Linux9 小时前
32岁入行STM32迟吗?
stm32·单片机·嵌入式硬件
m0_466607709 小时前
【STM32CubeMX】ST官网MCU固件库下载及安装
stm32·单片机·嵌入式硬件