关于软件抗干扰问题和策略,如果在实际应用中能很好的遵循这些原则,再配合硬件电路的抗干扰措施,基本上可以消除干扰影响。但有时往往因为程序本身的复杂度和芯片资源的限制,再加上编程人员本身的能力限制,不能做到十分完善。所以我们只能给出一些建议,至于具体的实现,就需要各位在平时的项目实践中不断的摸索和积累经验。以下是之前有关软件抗干扰的问题答复,谨供参考:
防止干扰最有效的方法是去除干扰源、隔断干扰路径,但往往很难做到,所以只能看单片机抗干扰能力够不够强了。单片机干扰最常见的现象就是复位;至于程序跑飞,其实也可以用软件陷阱和看门狗将程序拉回到复位状态;所以单片机软件抗干扰最重要的是处理好复位状态。
一般单片机都会有一些标志寄存器,可以用来判断复位原因;另外也可以自己在RAM中埋一些标志。在每次程序复位时,通过判断这些标志,可以判断出不同的复位原因;还可以根据不同的标志直接跳到相应的程序。这样可以使程序运行有连续性,用户在使用时也不会察觉到程序被重新复位过。