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库的严谨性, 可以检查我们的编写的漏洞

相关推荐
@晓凡15 小时前
keil5找不到下载器
stm32
Devlab15 小时前
LVGL设计大师——网页版anyui来了!!
嵌入式硬件·物联网·低代码·ui·iot
Dr.kangder18 小时前
嵌入式面试总结(十五)——异常处理
单片机·面试·职场和发展·系统架构·嵌入式
zlinear数据采集卡20 小时前
D223上位机C#开发实战:从帧解析到波形显示的完整实现
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
ACP广源盛1392462567320 小时前
蚂蚁百灵 Ling‑3.0‑flash 开源 + 昇腾 0‑Day 原生适配@ACP#GSV9001E 在国产算力矩阵中的机会与落地场景
大数据·人工智能·分布式·单片机·嵌入式硬件
Rocktech_ruixun1 天前
机器人端侧大模型部署对主板有哪些要求?瑞迅主控板分级方案对比
人工智能·嵌入式硬件·机器人
振南的单片机世界1 天前
SysTick硬核拆解:既是HAL_Delay的“心跳”,也是RTOS的“节拍器”
arm开发·stm32·单片机·嵌入式硬件
Lzh编程小栈1 天前
【嵌入式底层】SPI超透彻详解:通信原理、四线结构、四种模式、寄存器底层 + 面试全集
c语言·stm32·单片机·面试·职场和发展
Rocktech_ruixun1 天前
机器人数据采集能力取决于什么?瑞迅科技RK3588/3576核心板方案深度解析
人工智能·嵌入式硬件·机器人
水果里面有苹果1 天前
28-DRV8825PWPR步进电机驱动器
单片机