STM32程序进入hardfault_handler()

背景:

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

导致程序反复复位。

查找原因:

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

很奇怪!

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

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

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

相关推荐
Jcenav9 小时前
OCXO外围电路设计指南
单片机·嵌入式硬件
Nautiluss9 小时前
一起玩XVF3800麦克风阵列(八)
大数据·人工智能·嵌入式硬件·github·音频·语音识别
神圣的大喵9 小时前
平台无关的嵌入式通用按键管理器
c语言·单片机·嵌入式硬件·嵌入式·按键库
三佛科技-1341638421210 小时前
FT8353系列(FT8353A/B/C/CD/DD/K/KD/PD)隔离型LED恒流驱动IC芯片 典型应用电路
单片机·物联网·智能家居·pcb工艺
无人装备硬件开发爱好者11 小时前
深度解析:STM32 MDK 工程 HEX 文件转 BIN 文件 —— 原理、方法、优缺点与实战指南(中)
stm32·嵌入式软件·hex2bin
阿拉斯攀登11 小时前
嵌入式-硬件基础:了解三极管
单片机·嵌入式硬件·三极管
逐步前行11 小时前
C51_74HC165并口转串口
单片机·51单片机
HarrySunCn11 小时前
如何使用VSCode开发Arduino项目
ide·vscode·单片机·编辑器
嵌入式的飞鱼12 小时前
SD NAND 焊接避坑指南:LGA-8 封装手工焊接技巧与常见错误
人工智能·stm32·单片机·嵌入式硬件·tf卡
三佛科技-1341638421212 小时前
LN8K05A/B/C_5V非隔离AC-DC电源芯片 典型应用场景、典型电路、与阻容降压的对比分析
单片机·嵌入式硬件·物联网·智能家居·pcb工艺