STM32程序进入hardfault_handler()

背景:

假期前一直在修改代码,没有边改边测。节后回来测试代码,发现程序上电后很快就进入hardfault_handler()中断。

导致程序反复复位。

查找原因:

在程序的_it.c文件里有几句代码,如果注释掉不执行,就不会进入hardfault_handler()中断。

很奇怪!

后来才发现,这几句代码里使用了一个变量,这个变量是在其他文件中定义的,所以在_it.c文件里是通过extern关键字引入的。引入的时候,后面的数据类型是uint16_t。而实际上变量定义的地方数据类型是uint8_t

这样一来,不就访问越界了吗!所以进入.hardfault_handler()。

要是keil软件能提示下这种错误就好了!

相关推荐
不上岸的旱鸭子1 小时前
PCB设计
单片机·pcb工艺
吠品1 小时前
多语言支持,从后台到前端我都趟过哪些坑
stm32·单片机·嵌入式硬件
炸膛坦客2 小时前
单片机/C/C++八股:(二十三)#define 和 typedef 的区别
c语言·c++·单片机
zlinear数据采集卡2 小时前
硅片里的“自动纠错“:硬核拆解LHAMP188自动归零技术原理与三种封装的PCB布局实战
arm开发·单片机·嵌入式硬件·fpga开发·开源
2401_888859713 小时前
STM32H7外部flash(W25Q128)+SPI+DMA读写
stm32·单片机·嵌入式硬件
Industio_触觉智能3 小时前
开源鸿蒙OpenHarmony再进阶,OneConnect规范即将升级为国家级行业标准
嵌入式硬件·物联网·硬件架构·智能硬件·openharmony·开源鸿蒙
一个嵌入式学徒5 小时前
STM32F4 HAL库常用API手册(非CubeMX生成,需手动调用)
stm32·单片机·嵌入式硬件
m0_377108145 小时前
小智ai,esp32
单片机
是摆烂第一名呀5 小时前
RK3576+GMSL摄像头底层适配与调试
linux·arm开发·驱动开发·嵌入式硬件·数码相机
Mr-pn-junction14 小时前
clk_gate
单片机·嵌入式硬件·fpga开发