打印

MSP430F5325外部中断导致复位

[复制链接]
4624|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hzw9111|  楼主 | 2015-3-19 19:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好:我今天接到一个很棘手的任务,项目以前是经理做的,因为偶尔会产生外部中断导致系统复位的问题,所以我们的产品一直没有能顺利推向市场。现象大致如此:在很多情况下不会出现复位,但偶尔有外部中断之后,过1S钟这样,看门狗起作用了就产生复位。麻烦大伙帮分析分析(我比较熟悉ST芯片,对TI不是很熟悉)

相关帖子

沙发
comeon201208| | 2015-3-19 20:03 | 只看该作者
TI的430芯片的本身就是不很稳定的,,果断换方案吧。。

使用特权

评论回复
板凳
comeon201208| | 2015-3-19 20:03 | 只看该作者
用你的ST的去实现也是可以的啦,程序可以直接移植过去的。

使用特权

评论回复
地板
hzw9111|  楼主 | 2015-3-19 20:11 | 只看该作者
其实我是很想直接换掉方案的,一方面板子已经生产了1000多套,能处理好的话还是用着;一方面是经理不会情愿让我丢了他写的东西。。。。

使用特权

评论回复
5
dirtwillfly| | 2015-3-19 20:36 | 只看该作者
觉得应该是程序的问题。
msp430一般应用还是很稳定的,不然也不会那么多人在用了

使用特权

评论回复
6
dirtwillfly| | 2015-3-19 20:37 | 只看该作者
建议检查下为什么没及时喂狗

使用特权

评论回复
7
hzw9111|  楼主 | 2015-3-19 20:47 | 只看该作者
应该不是不及时喂狗的原因,因为这个复位的现象只是偶尔发生的,在很多情况下试都没有问题,就是当休眠很长时间之后比较容易产生这个复位现象

使用特权

评论回复
8
hzw9111|  楼主 | 2015-3-19 20:50 | 只看该作者
我看到的现象感觉是中断了之后,程序不知道飞到哪里去了,所以请教大家在处理中断的时候需要注意一些什么问题,中断里面我已经尽量缩短代码,只有几行标志位,也已经清除中断标志位了,也没有在中断里面调用别的函数了,不知道这个芯片还需要注意些什么

使用特权

评论回复
9
dirtwillfly| | 2015-3-19 21:27 | 只看该作者
hzw9111 发表于 2015-3-19 20:50
我看到的现象感觉是中断了之后,程序不知道飞到哪里去了,所以请教大家在处理中断的时候需要注意一些什么问 ...

不清楚。如果方便的话建议提供下代码

使用特权

评论回复
10
firstblood| | 2015-3-19 21:55 | 只看该作者
这个在硬件设计上就要考虑外部的干扰的啦。。

使用特权

评论回复
11
hzw9111|  楼主 | 2015-3-19 22:51 | 只看该作者
有道理!! 或许就是硬件的问题

使用特权

评论回复
12
yirongfu| | 2015-3-19 23:24 | 只看该作者
本帖最后由 yirongfu 于 2015-3-19 23:25 编辑

这个得仔细排查,看看究竟哪里引起的,不好下结论说是MCU的事。比如中断事件时带入的偶然的外部干扰,导致电源的扰动,造成复位。如果认定是看门狗造成的复位,好像可以通过程序从寄存器里去判断是否是看门狗引起的复位,这样就能缩小故障查找范围。还可以将一些功能或电路暂时屏蔽,看看复位是否还会出现。这样慢慢把原因找出来。

使用特权

评论回复
13
mmuuss586| | 2015-3-20 08:24 | 只看该作者
comeon201208 发表于 2015-3-19 20:03
TI的430芯片的本身就是不很稳定的,,果断换方案吧。。

芯片都差不多的;
虽然我是ST的版主;

使用特权

评论回复
14
mmuuss586| | 2015-3-20 08:25 | 只看该作者

也不排除硬件引起的;
如果系统设计不稳定,看门狗就容易复位;
有些MCU还会丢程序呢;

使用特权

评论回复
15
myqq12| | 2015-3-20 13:02 | 只看该作者
最好详细描述一下,单片机都差不多,不能说TI的就不好,毕竟人家有这么大的市场,
个人认为程序的可能性比较大,外部中断是不是进去了之后会出现反复进中断的问题,因为反复进中断导致你没有时间喂狗,所以就复位了,如果在这种情况下没有外狗的情况下就是死机,哪怕你的内狗开着也不行,里面有没有类似切换某些中断的时钟或者修改周期,这也是有可能导致这种现象的。

使用特权

评论回复
16
hzw9111|  楼主 | 2015-3-20 22:38 | 只看该作者
谢谢大家,今天排查了一天,还没有结果,进入休眠以及退出休眠这段程序我打算自己重新写,然后再仔细测试。因为这种现象不是经常发生,我今天整整测试了三个多小时的外部中断试验,出现偶然复位重启的就两次,从程序运行来看,从中断已经能正常退出了,但是退出之后,程序偶尔就不知道跑到哪里去了,挺折腾的,谢谢大家!

使用特权

评论回复
17
dirtwillfly| | 2015-3-21 21:40 | 只看该作者
hzw9111 发表于 2015-3-20 22:38
谢谢大家,今天排查了一天,还没有结果,进入休眠以及退出休眠这段程序我打算自己重新写,然后再仔细测试。 ...

慢慢来。如果方便,建议把电路图和代码传到论坛,大家一起来讨论

使用特权

评论回复
18
aliu_us| | 2015-3-22 19:25 | 只看该作者
如果允许了没有isr程序的中断,会导致跑飞。前面的同学已经说了,发生复位后从寄存器可以查到复位原因的。

使用特权

评论回复
19
ayl439| | 2015-3-23 17:15 | 只看该作者
无图无真相……

使用特权

评论回复
20
ayl439| | 2015-3-23 17:16 | 只看该作者
步兵无真相……

使用特权

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

本版积分规则

1

主题

7

帖子

1

粉丝