注册 登录
查看: 561|回复: 15

一直硬件上访hard fault ,求解答

[复制链接]
发表于 2014-11-2 22:39:23 | 显示全部楼层 |阅读模式

hard fault触发后的调用call stack ,看到的sp指向是场中断,一直触发hard fault 每次的原因都是指向中断函数,有的时候是场中断,有的时候是速度采集中断,反正一直都是外部中断出错,求山哥解答呀!

本帖子中包含更多资源

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

x
回复

使用道具 举报

发表于 2014-11-2 22:43:30 | 显示全部楼层
应该是数组越界,有可能是摄像头采集越界,也可能是你的软件处理越界。

如果是摄像头采集越界,可以看这里:
改了底层后解决了图像卡住的问题 - 智能车讨论区 - 山外论坛 http://vcan123.com/forum.php?mod ... tid=4363&ctid=6
来自安卓客户端来自安卓客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-2 23:23:55 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-2 22:43
应该是数组越界,有可能是摄像头采集越界,也可能是你的软件处理越界。

如果是摄像头采集越界,可以看这 ...

但是我们把while和for都限制了还有除零都限制了
回复 支持 反对

使用道具 举报

发表于 2014-11-2 23:24:41 | 显示全部楼层
米饭伯爵 发表于 2014-11-2 23:23
但是我们把while和for都限制了还有除零都限制了


先看看是不是摄像头采集越界吧,可以增大采集数组,然后在采集数据后面加个标志位,如果越界,那么标志位一般删掉。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-2 23:29:15 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-2 23:24
先看看是不是摄像头采集越界吧,可以增大采集数组,然后在采集数据后面加个标志位,如果越界,那么标志 ...

好的,我们去试试看呢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-2 23:34:13 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-2 23:24
先看看是不是摄像头采集越界吧,可以增大采集数组,然后在采集数据后面加个标志位,如果越界,那么标志 ...

这采集越界是什么意思呢,我们都是按着鹰眼例程移植的呀
回复 支持 反对

使用道具 举报

发表于 2014-11-2 23:37:53 | 显示全部楼层
米饭伯爵 发表于 2014-11-2 23:34
这采集越界是什么意思呢,我们都是按着鹰眼例程移植的呀

DMA那部分的采集,容易出现异常。你按照那个帖子改一下,看看会不会 出现这问题吧。
越界,就是本身数组是 600字节的,但采集了 却是 601个字节,那就越界了1个字节(举个例子)。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-2 23:45:23 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-2 23:37
DMA那部分的采集,容易出现异常。你按照那个帖子改一下,看看会不会 出现这问题吧。
越界,就是本身数组 ...

我们还真没有注意到DMA这里会不会越界的问题,明天一定试试
回复 支持 反对

使用道具 举报

发表于 2014-11-3 13:28:08 | 显示全部楼层
米饭伯爵 发表于 2014-11-2 23:45
我们还真没有注意到DMA这里会不会越界的问题,明天一定试试

测出来了没有?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-3 16:22:49 | 显示全部楼层

DMA好像没问题,到是改了频率,就不上访了
回复 支持 反对

使用道具 举报

发表于 2014-11-3 16:24:41 | 显示全部楼层
米饭伯爵 发表于 2014-11-3 16:22
DMA好像没问题,到是改了频率,就不上访了

那很有可能就是DMA这块出了问题。之前我也遇到这情况,不改频率,就改清标志位也可以的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-3 20:39:07 | 显示全部楼层
仰逸致 发表于 2014-11-3 16:24
那很有可能就是DMA这块出了问题。之前我也遇到这情况,不改频率,就改清标志位也可以的。

两个改完以后,已经不上访了
回复 支持 反对

使用道具 举报

发表于 2015-3-30 21:39:02 | 显示全部楼层
我也有遇到这个问题。我是在 串口打印浮点数的时候 遇到的。其实 调试DEBUG中的调用栈 非常好用,推荐试试。
回复 支持 反对

使用道具 举报

发表于 2015-3-30 21:42:31 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-2 23:37
DMA那部分的采集,容易出现异常。你按照那个帖子改一下,看看会不会 出现这问题吧。
越界,就是本身数组 ...

山外哥,问个问题,就是 用山外的底层库 来串口打印 浮点数,有时候正常,有时候不正常的。。不知道怎么破。。如果正常的话,就在上位机正常打印出来了。不正常就指的是串口打印 硬件上访。。 调用栈来看 就是 打印这句话出问题了呢。
回复 支持 反对

使用道具 举报

发表于 2015-3-30 21:43:28 | 显示全部楼层
吴小浩 发表于 2015-3-30 21:42
山外哥,问个问题,就是 用山外的底层库 来串口打印 浮点数,有时候正常,有时候不正常的。。不知道怎么 ...

IAR 浮点打印的变通方法 - 智能车资料区 - 山外论坛 http://vcan123.com/forum.php?mod=viewthread&tid=7735&ctid=1
回复 支持 反对

使用道具 举报

发表于 2015-3-30 21:50:20 | 显示全部楼层
仰逸致 发表于 2015-3-30 21:43
IAR 浮点打印的变通方法 - 智能车资料区 - 山外论坛 http://vcan123.com/forum.php?mod=viewthread&tid=7 ...

刚看到这个帖子了,原来是 IAR的 自带浮点打印功能 不稳定,谢谢攻城军师了!
回复 支持 反对

使用道具 举报

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

本版积分规则

快速回复 返回列表 返回顶部