HardFault定位步骤
来源:互联网 发布:网络蜘蛛与源代码 编辑:程序博客网 时间:2024/06/03 21:14
以下内容是参考《CM3权威指南》和stm32f10x的解决方法总结的,有些内容会有所出入。实操中找不到和图片相同的内容时记得要灵活变通。
1.在stm32f4xx_it.c中的HardFault_Handler()中添加断点。当硬错误发生时就可以马上暂停程序执行。
2.此时查看R14(LR)寄存器的值,确定哪个指针的值是有效的。根据图片里的数值,我取MSP的值0x20000938。
3.打开Memory窗口,跳至MSP=0x20000938的内存位置。从这里向高地址数六个(也就是第七个?我也不是很清楚~)unsigned long,那个0x0800xxxx的数字就是出错的程序位置了。
4.打开反汇编窗口,右键->”Show Disassembly at Address”,输入我看到的第七个地址0x080021F2,就可跳转到发生HardFault的那一行代码了。
参考链接:http://bbs.ednchina.com/BLOG_ARTICLE_3024685.HTM
(另外在FreeRTOS中有个更详细的指南,我没看~:
http://www.freertos.org/Debugging-Hard-Faults-On-Cortex-M-Microcontrollers.html)
0 0
- HardFault定位步骤
- HardFault 异常定位
- keil MDK hardfault调试步骤
- Cortex-M3 内核HardFault错误调试定位方法
- 结合固件库探讨STM32读写FLASH步骤、HardFault问题
- Android GPS定位步骤
- 使用百度定位SDK步骤
- 360虚拟定位安装步骤
- 网络通信问题定位步骤
- ARM hardfault分析
- STM32103VE HardFault 故障问题
- STM32 malloc HardFault
- STM32如何查找hardfault原因
- 处理hardfault问题
- STM32如何查找hardfault原因
- HardFault错误来源
- 百度定位SDK 申请密钥步骤
- SIFT定位算法关键步骤的说明
- linux下touch修改文件的时间戳
- Git和SourceTree合用
- 51nod 1192 Gcd表中的质数
- VR 虚拟现实
- 大数据日知录--数据分片与路由
- HardFault定位步骤
- Android开发进阶:使用依赖注入函数库Roboguice
- IOS开发 CGAffineTransform相关函数
- FreeMarker表达式
- js file img 操作
- kernelBase 中有关 Package 的部分
- FreeMarker表达式
- iOS开发之基础视图—— UIToolbar
- codeforces D. Multiplication Table 二分答案