欢迎来到天天文库
浏览记录
ID:6901827
大小:33.56 KB
页数:9页
时间:2018-01-30
《51单片机应用系统软件抗干扰初探》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、51单片机应用系统软件抗干扰初探 (呼和浩特市委党校,内蒙古呼和浩特010010) 摘要:文章主要从实际应用的角度阐述单片机系统软件抗干扰的具体实现方法。 关键词:单片机;软件;抗干扰;指令集 中图分类号:TP273文献标识码:A文章编号:1007—6921(XX)07—0167—02 随着单片机在各个领域应用愈来愈广泛,单片机应用系统的可靠性越来越成为人们关注的一个重要课题。单片机应用系统的可靠性是由多种因素决定的,其中系统的抗干扰能力是系统可靠性的重要指标。由于51系列单片机的指令系统是复杂指令集结构,致使其抗干扰性能
2、不高,尤其用在工业控制的场合,如果不增加额外的抗干扰措施,甚至无法正常工作。要提高单片机系统的抗干扰性能无非是从硬件和软件两个方面加以考虑。硬件系统是单片机系统稳定工作的根本,经常采用的方法有:改善系统的布局、布线;采用光电耦合器以提高强电与弱电的隔离度;在电源变压器的初级增加滤波器;增加“硬件看门狗”等等。硬件抗干扰设计的缺点是增加了系统的复杂性,提高了硬件成本,而软件抗干扰设计在不增加系统复杂性,不提高硬件成本的前提下,同样可以在很大程度上提高系统的稳定性。 51系列单片机的指令包括单字节、双字节和三字节指令,双字节和三字节指令包含操作码
3、和操作数两部分。当单片机受到严重干扰时,程序计数器PC因干扰而改变,程序便脱离正常轨道“乱飞”,如果“飞”到单字节指令或双字节、三字节指令的操作码上,此时程序将沿错误的轨道执行而出错,称这种“跑飞”为“第一类跑飞”。当“飞”到某双字节或三字节指令的操作数上,误将操作数当作操作码而执行,程序将出现严重错误,称这种“跑飞”为“第二类跑飞”。无论是前一种情况还是后一种情况,“跑飞”的程序执行结果将是无法预料的。“第一类跑飞”在执行一段错误程序之后还有可能回到正常轨道,但是“第二类跑飞”不可能再回到正常轨道了,往往是以进入“死循环”而告终,本文主要从实际应用
4、的角度阐述单片机系统软件抗干扰的具体实现方法。 1单片机软件抗干扰设计的主要方法 软件抗干扰设计的主要目的就是及时发现程序的“跑飞”,并及时地将程序拉入正常轨道,主要方法有:指令冗余、软件“看门狗”、软件“陷阱”、程序“跑飞”拦截等等。 1.1指令冗余 CPU取指令过程是先取操作码,再取操作数。在程序的关键地方人为的插入一些单字节指令,或将有效单字节指令重写称为指令冗余,通常是在双字节指令和三字节指令后插入两个字节以上的NOP指令。这样即使跑飞程序飞到双字节指令和三字节指令操作数上,由于空操作指令NOP的存在,避免了后面的指令被错
5、误地执行,为程序纳入正轨做好准备。此外,对系统流向起重要作用的指令,如RET、RETI、LCALL、LJMP、JC等,可以在这些指令之前插入两条NOP指令,可将跑飞程序纳入正轨,以确保这些重要指令的执行。 指令冗余只能使CPU不再将操作数当作操作码错误地执行,却不能主动地将程序的错误执行方向扭转过来,要想纠正程序的错误执行方向,就需要下面的技术。 1.2软件“看门狗”技术 跑飞的程序在执行一些错误操作之后,经常会进入“死循环”,也就是常说的“死机”。通常采用“看门狗”技术使程序脱离“死循环”,“看门狗”技术可由硬件实现,也可由软件实
6、现。硬件“看门狗”技术这里不再赘述,软件“看门狗”技术的原理是通过不断检测程序循环运行时间,若发现程序循环时间超过最大循环运行时间,则认为系统陷入“死循环”,需要进行出错处理。 在实际应用中,通常用定时中断服务程序定时地检查主程序的运行情况。例如,在RAM区选择一个字节作为软件看门狗寄存器,主程序每循环一次将该寄存器加1,定时器T0的中断服务程序每中断一次将该寄存器减1并检查一次,如果程序执行正常,看门狗寄存器不会改变或改变不大,如果看门狗寄存器发生了改变或改变很大,则说明系统陷入“死循环”,需要进行出错处理。 在工业应用中,严重的干
7、扰有时会破坏中断方式控制字,关闭中断,造成看门狗失效,这时可以采用环形中断监视系统。用定时器T0监视定时器T1,用定时器T1监视主程序,主程序监视定时器T0。采用这种环形结构的软 件“看门狗”具有良好的抗干扰性能,大大提高了系统可靠性。对于需经常使用T1定时器进行串口通信的测控系统,则定时器T1不能进行中断,可改由串口中断进行监控(如果用的是MCS-52系列单片机,也可用T2代替T1进行监视)。当然,对主程序最大循环周期、定时器T0和T1定时周期应予以全盘合理考虑。 软件“看门狗”技术需要使用定时器,而在大多数的控制程序中,定时器都是紧
8、俏的资源,这就使软件“看门狗”技术的实际应用受到了限制,可以采取一些技巧性的处理,将软件“看门狗”程序与其他
此文档下载收益归作者所有