stm32bootloader跳到app无法运行问题

场景:

使用hal库, 直接配置了HSE加PLL锁相环, bootloader跳app后程序无法运行.

原因:

程序跳到app后, HAL_RCC_OsConfig函数监测到HSE和PLL启动,不会按照APP的配置进行初始化,

退出前读取RCC->PLLCFGR的配置, 读到的值和配置的值不一致, 返回HAL_ERROR, 执行ERROR_Handler(), 程序卡在while(1).

解决方法:

bootloader不启用PLL锁相环那边的时钟, 直接选用HSI时钟

由于我选择的串口选择的的是921600, 选择8M时钟无法配置这个波特率

总结:

注释掉ERROR_Handler是可以正常运行的

差别还是在于bootloader和App的时钟配置不一样, App开启的外设更多, 开启了PLLQ, 因此这才是问题的原因

这就是HAL库的严谨性, 可以检查我们的编写的漏洞

相关推荐
wuyk55511 小时前
24. C 语言模块化:不是拆几个.c 文件那么简单
c语言·开发语言·stm32·单片机
☆cwlulu12 小时前
调试排查工具介绍(gdb、strace、Valgrind等)
开发语言·c++·嵌入式硬件·ubuntu
lzqrzpt13 小时前
LED驱动电源选型标准与工程应用技术要点解析
python·单片机·嵌入式硬件·物联网
木子单片机14 小时前
基于51单片机的音乐彩灯设计
单片机·嵌入式硬件·51单片机·keil
hongmai66688814 小时前
ESP32-S2-MINI-2U-N4R2:一款为灵活部署而生的Wi-Fi MCU模组
人工智能·单片机·嵌入式硬件·物联网·智能家居
熙芯XiChip14 小时前
Modbus-RTU帧结构与功能码解析
单片机
电子工程师成长日记-C5114 小时前
51单片机录音笔(带闹钟)
单片机·嵌入式硬件·51单片机
传感器与混合集成电路16 小时前
电流频率转换模块选型要考虑哪些参数?量程匹配、精度等级与封装形式的综合决策
单片机·嵌入式硬件
JNX_SEMI16 小时前
AT2659 L1频段多模卫星导航低噪声放大器技术解析
前端·单片机·嵌入式硬件·物联网·硬件工程