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

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

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

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

相关推荐
2401_8888597119 分钟前
STM32 DMA直接存储器存取
stm32·单片机·嵌入式硬件
智者知已应修善业23 分钟前
【51单片机6位数码管显示时间与秒表】2022-5-8
c语言·c++·经验分享·笔记·单片机·算法·51单片机
小禾苗_30 分钟前
32单片机——串口
单片机·嵌入式硬件
承前智3 小时前
基于ArduinoIDE的任意型号单片机 + GPS北斗BDS卫星定位
单片机·嵌入式硬件
不脱发的程序猿4 小时前
单片机裸机环境下临界区保护
单片机·嵌入式硬件
刻BITTER5 小时前
简单快速的浮点数转字符串算法,适合单片机环境
单片机·嵌入式硬件·算法
岂是尔等觊觎5 小时前
51单片机入门教程——每个音符对应的重装载值
单片机·嵌入式硬件·51单片机·智能硬件
朴实妲己6 小时前
stm32f4 声音传感器采集
stm32·单片机·嵌入式硬件
小智学长 | 嵌入式10 小时前
STM32部分:2、环境搭建
stm32·单片机·嵌入式硬件