[PIC32/SAM] debug错误 HardFault_Handler

[复制链接]
1904|11
 楼主| 彩云南国 发表于 2020-7-10 11:25 | 显示全部楼层 |阅读模式
本帖最后由 bellstudio 于 2020-7-15 19:18 编辑

mplab在debug时出现builtin software breakpoint的错误,请问怎么解决,找了好久没看见方法

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
ynwa 发表于 2020-7-10 13:49 | 显示全部楼层
有什么错误?__builtin_software_breakpoint()是XC32内建函数,允许你以编程方式在源代码中放置软件断点。
 楼主| 彩云南国 发表于 2020-7-10 14:13 | 显示全部楼层
ynwa 发表于 2020-7-10 13:49
有什么错误?__builtin_software_breakpoint()是XC32内建函数,允许你以编程方式在源代码中放置软件断点。 ...

就是debug的时候断点光标就老是停在这里了,然后再继续debug不了了
ynwa 发表于 2020-7-10 14:28 | 显示全部楼层
本帖最后由 ynwa 于 2020-7-10 14:30 编辑
彩云南国 发表于 2020-7-10 14:13
就是debug的时候断点光标就老是停在这里了,然后再继续debug不了了

这个内建函数本身就是这个功能,你可以去看看XC32用户指南。执行到这个函数了,它就像遇到断点一样,使得程序停止执行。估计不是你写的代码,你应该先搞清楚为什么要调用这个函数以及什么情况下会执行到这个函数。
 楼主| 彩云南国 发表于 2020-7-10 14:46 | 显示全部楼层
ynwa 发表于 2020-7-10 14:28
这个内建函数本身就是这个功能,你可以去看看XC32用户指南。执行到这个函数了,它就像遇到断点一样,使得 ...

我目前在用x IDE这个环境在线调试一段自己写的代码,这个函数是系统代码中的的软件断点函数(系统自带的),可能是内存溢出或者是访问越界导致触发了这个软件断点函数,但是目前我不知道调用这个函数的问题代码在哪,怎么样在MPLAB x IDE中找到触发这个个函数的问题(前一段问题代码),希望您能指导一下,谢谢了
ynwa 发表于 2020-7-10 15:06 | 显示全部楼层
本帖最后由 ynwa 于 2020-7-10 15:09 编辑
彩云南国 发表于 2020-7-10 14:46
我目前在用x IDE这个环境在线调试一段自己写的代码,这个函数是系统代码中的的软件断点函数(系统自带的 ...

那就是你的代码执行引起了hardfault exception,然后进入默认的HardFault_Handler函数,停止了运行。hardfault exception是硬件触发的,你应该根据芯片手册看看有哪些情况会引起hardfault exception,然后修改代码。
淘猫汤姆 发表于 2020-7-10 17:20 | 显示全部楼层
如6楼所说,你要解决的是检查下为什么进入Hard Fault,查查什么原因
 楼主| 彩云南国 发表于 2020-7-10 17:54 | 显示全部楼层
ynwa 发表于 2020-7-10 15:06
那就是你的代码执行引起了hardfault exception,然后进入默认的HardFault_Handler函数,停止了运行。hardf ...



请问您说的用户指南是指哪一个,为什么我找到的指南是代码历程呢?请发个链接,谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
淘猫汤姆 发表于 2020-7-10 18:00 | 显示全部楼层
本帖最后由 淘猫汤姆 于 2020-7-10 18:03 编辑
彩云南国 发表于 2020-7-10 17:54
请问您说的用户指南是指哪一个,为什么我找到的指南是代码历程呢?请发个链接,谢谢
...

nono,你要看看对应器件手册发生这个exception的条件,然后结合你的stack情况来找问题。不同构架的芯片有不同的hardfault,以及处理方法,所以你要求助,最起码你得把型号写出来吧
 楼主| 彩云南国 发表于 2020-7-10 19:44 | 显示全部楼层
淘猫汤姆 发表于 2020-7-10 18:00
nono,你要看看对应器件手册发生这个exception的条件,然后结合你的stack情况来找问题。不同构架的芯片有 ...

微芯的atsame70q21b芯片,编译环境mplab x IDE
淘猫汤姆 发表于 2020-7-10 20:27 | 显示全部楼层
彩云南国 发表于 2020-7-10 19:44
微芯的atsame70q21b芯片,编译环境mplab x IDE

https://developer.arm.com/documentation/dui0646/c/the-cortex-m7-processor/fault-handling/fault-types?lang=en
https://developer.arm.com/documentation/dui0646/c/cortex-m7-peripherals/system-control-block/hardfault-status-register?lang=en
第一链接告诉你hardfault,第二链接告诉你遇到HF该做什么
 楼主| 彩云南国 发表于 2020-7-13 09:27 | 显示全部楼层
淘猫汤姆 发表于 2020-7-10 20:27
https://developer.arm.com/documentation/dui0646/c/the-cortex-m7-processor/fault-handling/fault-typ ...

谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

35

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部