智能车制作

标题: 急救!!!! [打印本页]

作者: Su_小白    时间: 2017-3-10 13:00
标题: 急救!!!!
这是什么问题啊,路过大神帮忙看看
作者: 2585341750    时间: 2017-3-10 14:35
本帖最后由 2585341750 于 2017-3-10 14:38 编辑

程序卡死了,像数组越界什么的就是一种可能的原因


可以在各个函数开头或者中间的位置让它发送一句话,看看执行到哪里的时候卡死了



或者注释程序,看看注释了什么它就不卡了

作者: Su_小白    时间: 2017-3-10 16:35
好的  我试试
作者: 那兔    时间: 2017-3-10 16:39
如果你用的是IAR的话,调试界面使用Call stack,单步执行,看看“……default……”所在函数调用前程序是怎么执行的。
作者: Su_小白    时间: 2017-3-10 17:16
那兔 发表于 2017-3-10 16:39
如果你用的是IAR的话,调试界面使用Call stack,单步执行,看看“……default……”所在函数调用前程序是怎 ...

我试过了,但是还是找不出问题所在

作者: 那兔    时间: 2017-3-11 15:07
本帖最后由 那兔 于 2017-3-11 15:10 编辑
Su_小白 发表于 2017-3-10 17:16
我试过了,但是还是找不出问题所在

打开MK60_conf.c,看void default_isr(void)  ,是 HardFault。
引起hard fault的原因很多,比如程序跑飞、指针未初始化和野指针、数组访问越界、寄存器操作不当、出入栈异常都有可能导致hard fault。二楼说的对,照他的方法试一试。

作者: Su_小白    时间: 2017-3-11 16:13
解决了   原因是因为有个初始化注释掉没有启用   感谢各位大大




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2