智能车制作

标题: 单片机死机 [打印本页]

作者: 流微·寒    时间: 2013-8-7 22:02
标题: 单片机死机
  单片机死机是怎么回事儿?大家又遇到单片机死机问题吗?


作者: glacier0    时间: 2013-8-7 22:16
你是让大家猜你用的是哪个型号的MCU么
作者: 流微·寒    时间: 2013-8-7 22:20
glacier0 发表于 2013-8-7 22:16
你是让大家猜你用的是哪个型号的MCU么

你好,我用的是XS128Q,请问你遇到过这种情况吗?


作者: 流微·寒    时间: 2013-8-7 22:20
流微·寒 发表于 2013-8-7 22:20
你好,我用的是XS128Q,请问你遇到过这种情况吗?

xs128

作者: gy810986741    时间: 2013-8-7 22:49
变量溢出么
作者: 灰原姐姐    时间: 2013-8-7 23:12
本帖最后由 灰原姐姐 于 2013-8-7 23:14 编辑
流微·寒 发表于 2013-8-7 22:20
xs128

单片机没有死机这么一说。
通常PC死机是由于死锁、活锁、消息队列响应不及时等。
单片机程序,如果没有跑操作系统,是不会死机的。
这时故障通常是:死循环、跑飞。
死循环不用说了大家都知道。
跑飞即PC寄存器(program counter)跳转到未知区域,
如果是清零和陷阱两种,都是由于硬件问题导致的。
例如某个端口电流过大、电源电压不足……

如果是跳转到一个奇葩的地方,则有可能是软件问题,
例如:野指针,数组下标越界等意外修改了PC寄存器的值。

所以,你可以检查一下是不是电路问题(一般很有可能是)
如果实在查不出来,就看看有没有野指针,数组下标是否越界。


作者: tobeabh    时间: 2013-8-8 10:03
看下你里面是不是有除法,除数是不是0
作者: 飞翔的翅膀    时间: 2013-8-8 10:37
指针越界很有可能,之前也遇到过
作者: 一粒尘埃    时间: 2013-8-8 13:26
查查自己数组里的数据有没有溢出,我以前也是这种情况,后来注意了这个方面就好了




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