MSP430复位的几种情况

2019-07-21 17:24发布

本帖最后由 tianli1980 于 2012-6-16 18:29 编辑

1.看门狗超时复位
由于没有及时喂狗或在程序一开始没有关闭看门狗,导致看门狗溢出复位。在调试阶段应该屏蔽看门狗,在程序的一开始使用WDTCTL = WDTPW + WDTHOLD; 语句关闭看门狗。
2.堆栈溢出复位

如果堆栈溢出导致复位,你应该感到庆幸,庆幸你发现了。在程序编译完成后应该看map,查看当前堆栈使用情况,430的22×2和2471堆栈都是默认80B,可以开启堆栈使用量报警。按照老鸟的说法,自己使用了多少堆栈自己心里应该清楚。对于我们这样的菜鸟,我说,编译器清楚,呵呵。
3.电压不够等问题导致复位
由于430的USB debug可以提供电源,所有有时候目标板就会忘了接电源,而当程序运行到某些地方,开启某些设备的时候,debug供电不足,就会导致复位。怕自己忘记的方法就是,对于板子上有大电流的,烧录接口一律改为Target供电。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
ji7411
1楼-- · 2019-07-23 02:13
嗯嗯13会。2容易忽略
okyouwin
2楼-- · 2019-07-23 06:07
学习了,好
huangfeng33
3楼-- · 2019-07-23 09:32
堆栈问题真的容易突略呀,谢谢楼主的分享,顶
liil1992
4楼-- · 2019-07-23 10:58
不错了,学习了
wang412372212
5楼-- · 2019-07-23 11:51
 精彩回答 2  元偷偷看……
jxmzzr
6楼-- · 2019-07-23 14:13
假如没有堆栈,数据不能保存,程序可能不正常。好贴,顶了

一周热门 更多>