新闻中心

单片机的罢工

作者: 时间:2016-11-27 来源:网络 收藏
一振荡器停止振荡

又可分为电源电压不稳,或者是强干扰引起的振荡器停振。

本文引用地址://m.amcfsurvey.com/article/201611/322225.htm

二PC指针跑飞

电源电压不稳或强干扰引起PC跑飞,如果看门狗不好,也会死机。

三设计上对长引出线的IO口没有保护,静电打在IO口上引起单片机死锁,破坏了硬件逻辑功能,导致死机。

四复位收到干扰,引起反复复位,在反复复位当中有可能会导致死机。

综上所述:

设计电路时,应该注意:

1.电源稳定

2.IO保护

3.振荡器pcb布线注意

4.复位电路设计和pcb布线

5.电源,信号线的干扰路径的保护,加滤波tvs等

6.高速信号输出远离信号输入端,如SPI总线,I2C总线布线要远离ADC,复位,时钟等布线处,以及其它模拟前端

我的理解:

1.“跑飞”是因为程序隐患或外部干扰引起的误动作,致使PC被写入“出界”数据,跑到了RAM区,或者跑到了FLASH的空白区。如果PC指向了RAM区,那神马情况就不好说了!因为持续译码器可能得到任意译码结果。如果PC指向了FLASH区的空白区,则可以事先将所有FLASH空白区填入某个你想要的数据,迫使持续译码器在这里翻译出你想要的指令,从而进行相应的处理。

2.“死机”是指PC进入了“死循环”,或者是MCLK等于近似为零的值。此时,要想救活MCU,非外狗不可。

程序运行过程中,如果MCU电源出现问题(电源供电问题,或其它外部电路引起额电源扰动),比较容易出现“跑飞”现象。

程序跑飞应该是PC(程序计数器0.0)出错;软件和硬件的问题都可能导致这样的问题的出现。

死机应该是CPU根本没有运行,多事硬件方面的问题造成的,比如POR复位不成功,430比较容易出现掉电不完全后重新上电。



关键词:单片机罢

评论


技术专区

关闭