打印
[STM32F1]

求教:STM32的芯片,会不会有硬件死机程序没死的情况?

[复制链接]
8070|38
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sherwin|  楼主 | 2016-11-15 17:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位玩STM32的朋友,求教一个事情:最近帮一个客户整了一个STM32的板子,我设计硬件,他们自己搞软件,经过一个多月的测试,他们提出要增加外部看门狗,理由是板子死机的概率很高。
据说,死机是硬件死机,软件没问题,内部看门狗不起作用了。并且他们也查了一些资料,据说是在ST的官网论坛上也看到有类似的说法,就是芯片受到周边射频的干扰导致了硬件死机,软件怎整都没有用,必须用外部看门狗强制复位。

大家帮忙看看,是否有这么回事?是否外加看门狗就一定能解决?多谢先啦!
沙发
dongnanxibei| | 2016-11-15 20:09 | 只看该作者
难道软件复位系统都不行?所谓的硬件复位,是什么意思?

使用特权

评论回复
板凳
dongnanxibei| | 2016-11-15 20:10 | 只看该作者
找个容易死机的,观察几个关键点的电压变化。

使用特权

评论回复
地板
sherwin|  楼主 | 2016-11-15 20:41 | 只看该作者
dongnanxibei 发表于 2016-11-15 20:10
找个容易死机的,观察几个关键点的电压变化。

已经监控过所有的电源电源点,没有变化,的确是MCU系统出的问题。实际上电源就只有5V/3.3V两种,外加一个GPRS模块的4V,很简单的。

至于说“容易死机”,这个比较随机,在他们手上的10多台样机,都曾经出现过这种情况。负责软件开发那小伙子经验还是挺丰富的,做嵌入式超过10年了,查询了很多资料才下这个结论的。所以在没有绝对把握前,我们也不敢贸然否认他的这个推断。

但是总觉得,系统内部的复位不起作用,应该是设置问题,不太可能是硬件不良啊。真的很奇怪了。

使用特权

评论回复
5
sherwin|  楼主 | 2016-11-15 20:44 | 只看该作者
dongnanxibei 发表于 2016-11-15 20:09
难道软件复位系统都不行?所谓的硬件复位,是什么意思?

补充,所谓“硬件复位”,就是外加一个硬件看门狗IC。

这东西成本不高,加起来没啥难度,但是我们希望能找到问题的根源,彻底解决之,而不仅仅是临时打个补丁。并且重新做一次板子,费时费力还有很多不确定性,不到万不得已,不想走这一步。

使用特权

评论回复
6
戈卫东| | 2016-11-15 20:46 | 只看该作者
给他们搞个外部电源开关吧。。。。。
若干毫秒不给脉冲切电源

使用特权

评论回复
7
sherwin|  楼主 | 2016-11-15 20:55 | 只看该作者
戈卫东 发表于 2016-11-15 20:46
给他们搞个外部电源开关吧。。。。。
若干毫秒不给脉冲切电源

那就相当于看门狗了嘛。

现在最重要的是,搞清楚根本原因,以免浪费人力物力瞎整。至于具体的对策,等搞清楚了原因,自然会有办法的。

使用特权

评论回复
8
zjh2009| | 2016-11-15 21:04 | 只看该作者
STM32的看门狗不行吗,程序进入死循环或者hardfault的情况时有发生,与经验多少有时关系不大。

使用特权

评论回复
9
sherwin|  楼主 | 2016-11-15 21:08 | 只看该作者
zjh2009 发表于 2016-11-15 21:04
STM32的看门狗不行吗,程序进入死循环或者hardfault的情况时有发生,与经验多少有时关系不大。 ...

是的,STM32的看门狗不起作用了。

我也怀疑其实是程序进入了死循环,而恰巧这段循环里面有喂狗的动作,所以才导致看门狗不起作用的。但是这个没法验证,头痛啊。

至于hard fault(硬故障),不知具体是指啥,可否详细描述一下?

使用特权

评论回复
10
ddllxxrr| | 2016-11-15 21:28 | 只看该作者
除非强电,或放电电弧干扰,一般情况下不会出现死机的情况。如果非要加看门狗,还得喂狗,程序还得负担。能不能,在内部重起,启的过程中把参数还原。

使用特权

评论回复
11
xyz549040622| | 2016-11-15 21:30 | 只看该作者
本质上还是外部影响的,加个屏蔽罩会不会有效果呢?

使用特权

评论回复
12
sherwin|  楼主 | 2016-11-15 21:41 | 只看该作者
xyz549040622 发表于 2016-11-15 21:30
本质上还是外部影响的,加个屏蔽罩会不会有效果呢?

如果加看门狗能解决,肯定比加屏蔽罩要强啊。无论硬件成本、开发投入,都会小很多嘛。

使用特权

评论回复
13
sherwin|  楼主 | 2016-11-15 21:43 | 只看该作者
netjob 发表于 2016-11-15 21:15
STM32内部的看门狗 不可靠。 你可以试试,仿真的时候看门狗不影响仿真,这是不对的。

用过TI的MSP430和C28 ...

有这种事情?我跟软件商量一下,验证一下看看。

如果确实如您所言,则估计ST的片子,的确会有这个问题,就跟其I2C接口不稳定一样了。

使用特权

评论回复
14
huarana| | 2016-11-15 22:20 | 只看该作者
解决软件问题可以用窗口看门狗  ,硬件问题用独立看门狗。  暂时还没发现说是stm32的看门狗有重大问题。


使用特权

评论回复
15
zyj9490| | 2016-11-15 22:33 | 只看该作者
干扰没有去之前,硬件软件改进没用,为何,直接破环了CPU TIMER SEQU.乱取指和乱读,还是从EMC上考量。

使用特权

评论回复
16
winterchen20| | 2016-11-16 08:45 | 只看该作者
加看门狗吧   我做动态心电的  430  外部看门狗  

使用特权

评论回复
17
lrhsx33| | 2016-11-16 09:16 | 只看该作者
非要搞可以很简单,MCU固定输出一个PWM控制电源,调一下电容电阻太长没来就断一下MCU的电。
我没用过ST的芯片,不保证芯没问题。但我还是认为这种可能性很低,反而是软件问题的可能性更大。

使用特权

评论回复
18
wztoad| | 2016-11-16 10:06 | 只看该作者
stm32的防静电干扰很差,还是从这方面入手吧

使用特权

评论回复
19
没事逛荡| | 2016-11-16 10:20 | 只看该作者
netjob 发表于 2016-11-15 21:15
STM32内部的看门狗 不可靠。 你可以试试,仿真的时候看门狗不影响仿真,这是不对的。

用过TI的MSP430和C28 ...

STM32在仿真的时候,看门狗是工作的。感觉是正常的。

使用特权

评论回复
20
david4383| | 2016-11-16 11:00 | 只看该作者
在硬件受到强烈干扰的情况下,我相信硬件会死机的;
正常的情况下的死机,我更倾向是软件的问题更多。
先加一个试试吧。

使用特权

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

本版积分规则

个人签名:重新打工,努力赚奶粉钱!!!  

169

主题

8035

帖子

20

粉丝