打印

debug错误 HardFault_Handler

[复制链接]
747|27
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

使用特权

评论回复
沙发
zhanghqi|  楼主 | 2021-12-7 23:36 | 只看该作者
mplab在debug时出现builtin software breakpoint的错误,请问怎么解决,找了好久没看见方法

使用特权

评论回复
板凳
zhanglli| | 2021-12-7 23:38 | 只看该作者
有什么错误?__builtin_software_breakpoint()是XC32内建函数,允许你以编程方式在源代码中放置软件断点。

使用特权

评论回复
地板
zhanghqi|  楼主 | 2021-12-7 23:41 | 只看该作者
就是debug的时候断点光标就老是停在这里了,然后再继续debug不了了

使用特权

评论回复
5
wyjie| | 2021-12-7 23:43 | 只看该作者
这个内建函数本身就是这个功能,你可以去看看XC32用户指南

使用特权

评论回复
6
zhanghqi|  楼主 | 2021-12-7 23:45 | 只看该作者
执行到这个函数了,它就像遇到断点一样,使得程序停止执行。估计不是你写的代码,你应该先搞清楚为什么要调用这个函数以及什么情况下会执行到这个函数。

使用特权

评论回复
7
zhanghqi|  楼主 | 2021-12-7 23:47 | 只看该作者
我目前在用x IDE这个环境在线调试一段自己写的代码,这个函数是系统代码中的的软件断点函数(系统自带的)

使用特权

评论回复
8
zhanghqi|  楼主 | 2021-12-7 23:50 | 只看该作者
可能是内存溢出或者是访问越界导致触发了这个软件断点函数

使用特权

评论回复
9
zhanghqi|  楼主 | 2021-12-7 23:52 | 只看该作者
但是目前我不知道调用这个函数的问题代码在哪,怎么样在MPLAB x IDE中找到触发这个个函数的问题(前一段问题代码)

使用特权

评论回复
10
supernan| | 2021-12-7 23:54 | 只看该作者
那就是你的代码执行引起了hardfault exception,然后进入默认的HardFault_Handler函数,停止了运行。

使用特权

评论回复
11
dengdc| | 2021-12-7 23:56 | 只看该作者
hardfault exception是硬件触发的,你应该根据芯片手册看看有哪些情况会引起hardfault exception,然后修改代码。

使用特权

评论回复
12
zhenykun| | 2021-12-7 23:58 | 只看该作者
如6楼所说,你要解决的是检查下为什么进入Hard Fault,查查什么原因

使用特权

评论回复
13
daichaodai| | 2021-12-8 08:31 | 只看该作者
hardfault一般是指针或者内存溢出

使用特权

评论回复
14
zhanghqi|  楼主 | 2021-12-8 19:16 | 只看该作者

使用特权

评论回复
15
zhanghqi|  楼主 | 2021-12-8 19:22 | 只看该作者
请问您说的用户指南是指哪一个,为什么我找到的指南是代码历程呢?请发个链接,谢谢

使用特权

评论回复
16
pengf| | 2021-12-8 19:25 | 只看该作者
nono,你要看看对应器件手册发生这个exception的条件

使用特权

评论回复
17
dengdc| | 2021-12-8 19:27 | 只看该作者
然后结合你的stack情况来找问题

使用特权

评论回复
18
zhenykun| | 2021-12-8 19:29 | 只看该作者
不同构架的芯片有不同的hardfault,以及处理方法,所以你要求助,最起码你得把型号写出来吧

使用特权

评论回复
19
zhanghqi|  楼主 | 2021-12-8 19:31 | 只看该作者
微芯的atsame70q21b芯片,编译环境mplab x IDE

使用特权

评论回复
20
renyaq| | 2021-12-8 19:33 | 只看该作者
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该做什么

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

852

主题

11757

帖子

5

粉丝