对于高可靠性的工业产品中,如果利用软件应对有可能引起指令异常的干扰是 不现实的,尤其现在对产品的EMI测试要求愈来愈严格的情况下,比如现在越来 越多的工业产品需要应对CLASS A 的测试,在实际系统中,任何一个指令的异 常都可能引起系统的异常,这在CLASS A 中的测试是不允许的.即使在CLASS B 的测试中也只允许一次复位,如果你启动了watchdog,但是你的硬件不能 抵抗持续的EMI测试,那么MCU将会reset again and again.
在EMI的分析上,通常分为干扰源,干扰路途,接受对象,当MCU的指令异常时, 从干扰源到接受对象整个干扰已经完成.所谓的软件抗干扰只是收拾善后工作, 减小系统fail后的危害后果而已.
所以软件抗干扰只能作为系统抗干扰的一种辅助手段, 在比如通信数据流中的编码检错,是一种比较有用 的手段.数字滤波也是应对采样信号受干扰的有效手段之一, 实际上,这些手段更多的体现的是数学功能.
结论: 1,软件抗干扰对指令异常是无能为力,只是让系统死的风光一点 2,学好数字信号处理,让你的软件更稳定一些. 3,做好系统的设计和MCU周边硬件电路的设计,做好早期的EMI设计规划,不要期望到后来软件来补漏. 4,选一颗坚强的"芯",推荐freescale. 5,以上针对的是工业产品,如果是消费产品,如果你能用到通常介绍的软件抗干扰方法,你的产品将立刻与众不同, 不要象我家的机顶盒遥控器,老要拔掉电池 and restart,shit.
|