STM32程序进入hardfault_handler()

背景:

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

导致程序反复复位。

查找原因:

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

很奇怪!

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

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

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

相关推荐
天天爱吃肉821813 分钟前
【汽车研发测试工程师|Python自动化实测全套脚本(CAN解析+数据处理+自动出报告)】
大数据·python·功能测试·嵌入式硬件·汽车
三佛科技-1341638421220 分钟前
AIP8P005B 与FT60E112A(8位I/O型单片机)对比分析,FT60E112A能否兼容替代AIP8P005B?
单片机·嵌入式硬件·物联网·智能家居·pcb工艺
fffzd26 分钟前
STM32:串口--轮询模式
stm32·单片机·嵌入式硬件·串口·hal库·轮询模式
municornm34 分钟前
单片机IO不够?ULN2003A救急方案
单片机·嵌入式硬件
m0_6185262035 分钟前
矩阵RGB三色LED驱动芯片CH466(SPI模式)
单片机·嵌入式硬件
染予1 小时前
实现功能:给stm32F427zgt6开发板配置网络,电脑可以ping通开发板
stm32·单片机·嵌入式硬件
Hotchip_MEMS1 小时前
单节锂电池充电管理:如何平衡充电速度与电池寿命
人工智能·单片机·嵌入式硬件·物联网
ι:1 小时前
Codex 接管嘉立创EDA 并复现 STM32 Blue Pill 学习底板的完整教学
stm32·嵌入式硬件·学习
西城微科方案开发1 小时前
蓝牙血压计 PCBA 方案
单片机·嵌入式硬件
金戈鐡馬1 小时前
深入解析PGND在FOC中的作用和存在的必要性
单片机·嵌入式硬件·foc·磁场定向控制·电调