STM32进入HardFault_Handler处理办法
2017-09-06 18:59
337 查看
STM32进入HardFault_Handler处理办法
HardFault_Handler出现的情况一般有两种:一种是:数组越界
一种是:堆栈溢出,程序指针指飞
方法一
在中断HardFault_Handler中的while()处打上断点,让程序执行到此处停止。
在Registers里面找到R14(LR)的值,我的这里是:0xFFFFFFF9
说明一下:
0xFFFFFFF9对应的是要看MSP寄存器
0xFFFFFFFD对应的是要看PSP寄存器
所以这里需要查找的内存地址是MSP的值:0x20008828
在memory里面查找MSP的值:0x20008828,然后在对应的行里面找到地址,地址一般格式都是:0x0800BA68这样的。
4.在Disassembly里面右键选择Show Code at Address,把找到的地址输进去进行搜索,然后就会找到相对应的代码,这里的代码就是在进入循环中断之前的时候的情况,仔细查看这部分函数被调用或者数组内存使用情况。
方法二
在中断HardFault_Handler中的while()处打上断点,让程序执行到此处停止。
在keil中打开Call Stack + Locals,然后在HardFault_Handler上 右键选择:Show Caller Code,就会跳转到进入循环中断之前的函数处。仔细查看这部分函数被调用或者数组内存使用情况。
相关文章推荐
- STM32进入HardFault_Handler处理办法
- STM32进入HardFault_Handler处理办法
- STM32进入HardFault_Handler处理办法
- 解决stm32进入HardFault_Handler的定位办法
- 解决stm32进入HardFault_Handler的定位办法
- [解决办法]EMWIN卡住进入HardFault_Handler异常的处理
- stm32 串口4 进HardFault_Handler中断 处理方法
- STM32程序进入HardFault_Handler
- 【STM32】HardFault_Handler问题解决的一种办法
- 关于stm32 HardFault_Handler 异常的处理死机
- FSMC调试进入HardFault_Handler问题的解决办法
- STM32 出现 hardfault_handler 处理方法
- STM32硬件错误HardFault_Handler的处理方法
- 关于stm32 HardFault_Handler 异常的处理 死机
- stm32调试,进入 HardFault_Handler
- STM32进入HardFault_Handler的调试方法
- 1、STM32进入硬件错误中断(HardFault_Handle)处理方法
- ucos ii移植到STM32 (HardFault_Handler)
- 关于freertos移植到stm32出错,程序直接跳到HardFault_Handler的问题。
- bootloader与app区域代码重叠导致进入HardFault_Handler!