CPU正常运行两年多后出现反复死机
想问一个问题:使用您家的STC15F2K60S2这款CPU,做了一个控制板,使用企业生产线上,这个产品已经生产了五六年了,目前在正常使用的有接近3000块板子了,基本都没问题。最近出现这样一个问题,想和你们探讨一下:有一块板子正常运行了两年多,最近出现CPU死机不工作,停电后送电,仍然死机,但停电超过五分钟再送电,就又能工作二十分钟,然后又死机。如果停电2天再开机,则又可以正常工作三四个小时,之后仍然死机。也把这块板子更换到另一台机器上,结果一样。我们采取重新写程序,然后又可以正常运行几天,之后还是出现上述的过程。总体感觉,就是停电时间越长,开机后就能多工作一会儿。重新写程序,又能多工作几天,但还是几天后又会出现上述过程。因为是工作在重要工作场合,死机会带来危险状况,所以我们必须解决这种故障,尽管是偶然一块板子。我们采取的方式:采用片内的看门狗方式,这个方式虽然可以解决死机,但系统会复位再工作,不是很理想。
想问一下:是什么原因造成这种情况出现?有什么更好的解决方式?
感觉和板子上电容充放电相关?上传原理图看看?
问题板更换新MCU现象?和正常板子交叉MCU现象?
ercircle 发表于 2026-4-23 10:00
感觉和板子上电容充放电相关?上传原理图看看?
问题板更换新MCU现象?和正常板子交叉MCU现象?
因工作场合原因,未使用大电容,仅仅在电源上并联了一个独石电容0.01微法。
目前未更换CPU , 想用这块板子,试试看门狗方式,到现场试试。
但希望有更好的方式。 gangquan 发表于 2026-4-23 10:05
因工作场合原因,未使用大电容,仅仅在电源上并联了一个独石电容0.01微法。
目前未更换CPU , 想用这块板 ...
运行简单点灯程序看差异,排查下开了哪个功能会导致异常。
程序中使用了EEPROM?擦写两年寿命用尽?
ercircle 发表于 2026-4-23 10:22
运行简单点灯程序看差异,排查下开了哪个功能会导致异常。
同样使用场合,更换另一块板子,使用就很好了。
这块板子,放在另一台机器上,同样故障反复出现死机。
程序中确实用到EEPROM保存数据了,但频率是每天三次更新EEPROM中的数据。而且该数据仅仅是保存和调取显示(比如累计的某数据),该数据不参与控制,所以该数据与CPU死机无关。 gangquan 发表于 2026-4-23 10:05
因工作场合原因,未使用大电容,仅仅在电源上并联了一个独石电容0.01微法。
目前未更换CPU , 想用这块板 ...
板子能稳定运行两年多说明软硬件设计没有大问题,如果在使用过程经常擦写EEPROM有可能寿命近终。STC15F2K60S2的EEPROM只有2个扇区,如果程序只用到一个扇区,可以改软件换一个扇区试试。有条件最好用好板子与其交叉替换法求证。如果问题不在MCU,最有可能是电容变质。 gangquan 发表于 2026-4-23 11:04
同样使用场合,更换另一块板子,使用就很好了。
这块板子,放在另一台机器上,同样故障反复出现死机。
程 ...
只把MCU搬到新的板子上,,,,才能判断是否是单片机的问题。 长期工作的老板子出现异常,先检查虚焊和漏电问题.整板清洗和补焊焊点,检查PCB铜箔锈蚀断裂情况.可以解决大多数常见的老化问题.
跟开关机时间相关的异常多半跟连接器氧化,元器件的漏电,虚焊,以及温升有关.
如果清洗补焊无效,就用比对法和元件替换法查找问题点.
比对法就是用正常板子跟异常板子比对,看各处电压,电流,波形以及温度有没有较大的差异.发现差异再针对性分析处理.
如果以上方法都无效,就用替换法,把元件逐个替换掉测试,这个办法虽然笨了点,但很有效,最终都能发现问题点, 网老四 发表于 2026-4-23 11:43
长期工作的老板子出现异常,先检查虚焊和漏电问题.整板清洗和补焊焊点,检查PCB铜箔锈蚀断裂情况.可以解决大 ...
好的,谢谢啦 问题是,运行十几分钟CPU死机不工作了,停电一段时间又能工作十分钟,然后继续死机。所谓死机,就是各个I/O口都复位然后不变化了,并且不再变化。所以即使某器件老化或者线路老化或虚焊,但CPU不至于死机。而是控制混乱了。我是想弄明白死机的原因。
页:
[1]
2