单片机软件抗干扰
发布时间:2016/7/23 19:28:24 访问次数:484
软件抗干扰研究的内容主要是:①消除模拟输入信号的噪声(如数字滤波技术);②程序运行混乱 INA128PA时使程序进入正轨的方法。这里针对后者提出几种有效的软件抗干扰方法。
指令冗余技术
单片机CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当“乱飞”到某双字节指令,若取指令时刻落在操作数上,误将操作数当作操作码,程序将出错。若“飞”到了三字节指令,出错概率更大。在关键地方人为插入一些单字节指令,或将有效单字节指令重写成为指令冗余。通常是在双字节指令和三字节指令后插入两个字节以上的NOP。这样即使“乱飞”程序飞到操作数上,由于空操作指令NoP的存在,避免了后面的指令被当作操作数执行,程序自动纳入正轨。此外,对系统流向起重要作用的指令如ⅫⅡ、RETI、LCALL、LJMP、JC等之前插入两条NoP,也可将“乱飞”程序纳入正轨,确保这些重要指令的执行。
软件抗干扰研究的内容主要是:①消除模拟输入信号的噪声(如数字滤波技术);②程序运行混乱 INA128PA时使程序进入正轨的方法。这里针对后者提出几种有效的软件抗干扰方法。
指令冗余技术
单片机CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当“乱飞”到某双字节指令,若取指令时刻落在操作数上,误将操作数当作操作码,程序将出错。若“飞”到了三字节指令,出错概率更大。在关键地方人为插入一些单字节指令,或将有效单字节指令重写成为指令冗余。通常是在双字节指令和三字节指令后插入两个字节以上的NOP。这样即使“乱飞”程序飞到操作数上,由于空操作指令NoP的存在,避免了后面的指令被当作操作数执行,程序自动纳入正轨。此外,对系统流向起重要作用的指令如ⅫⅡ、RETI、LCALL、LJMP、JC等之前插入两条NoP,也可将“乱飞”程序纳入正轨,确保这些重要指令的执行。
上一篇:模拟量的通信传输
上一篇:软件锁、程序陷阱技术