APP下载

单片机软件抗干扰编程技术探究

2020-01-18牟永康浙江天煌科技实业有限公司

环球市场 2020年14期
关键词:看门狗外界消息

牟永康 浙江天煌科技实业有限公司

一、“看门狗技术”

在工程实践中通常都是几种抗干扰方法并用,互相补充、完善,才能取得较好的抗干扰效果。从根本上来说,硬件抗干扰是主动的,而软件抗干扰是被动的。细致周到地分析干扰源,硬件与软件抗干扰相结合,完善系统监控程序,设计一种稳定可靠的单片机系统是完全可行的。“看门狗技术”原理是运用定时器对中断方式工作进行系统程序监控,一旦系统受到外界主程序的干扰陷入死循环机后,就会触碰到定时器然后启用中断程序,将系统复位到死循环之前进入正常工作状态,这种技术主要是分为“养狗”和“喂狗”两部分。

看门狗技术实际上就在是系统中“养条看门狗”,正常运行时就定时进行喂养,一旦程序出现问题后难以正常喂狗,则就会自动将狗唤醒后实现复位引导,将系统恢复到正常工作状态,将脱离主程序之外的系统复位到正常运行轨道,解除死循环。因此喂狗主要是利用系统的正常程序的特点,通过中断方式以及定时器等进行系统环境测试,定时监控系统的工作状态,并以复位引导功能实现系统正常运行。

“看门狗技术”虽能有效地帮助单片机软件抵御外界的干扰,但是它也存在着一定的技术局限性。由于定时器的计数初值要定期重置,所以会增加编程的难度及工作量,且由于中断程序执行时间不能够超过正常初始设定时间,必须要将单机片软件状态进行定时监控,确保外界干扰产生时能够触发“狗”,进行中断关闭。因此“看门狗技术”也不能抵御外界所有害信号破坏,使程序恢复至正常状态。

二、系统“跑飞”处理技术

系统跑飞主要是由于外界干扰导致系统脱离正常运行轨道,这样一来就会产生两种状态:一是系统跳跃到主程序区域后,系统重要数据并没有破坏,则一段时间后系统就会自动进入正常运行轨道,这样的跑飞主要是由于系统出现断层以及调整不能正常,对系统本身的删号不大,所以在跳转后可以自主恢复;二是大多数在外界干扰下,系统遭到破坏需要通过软件抗干扰技术的抵御,修复系统的修复。主要有以下几种软件抗干扰方法。

指令冗余法,当外界有害信号对计算机软件系统进行破坏时,为了不让系统的重要数据遭到破坏,单片机软件可在程序中适当安排一些冗余指令,在计算机正常运行的指令下插入两条NOP 指令,保证程序运行到此的时候不会被打乱,程序则有可能恢复到正常的工作状态。

软件陷阱技术,是根据软件的运行系统在程序储存以及运行状态的每个区域内安排个陷阱,当陷阱启动后,软件就会自动进行环境测试启用重新复位引导系统功能,可以将干扰的计算机程序重新纳入正确的运行轨道上。一般而言,软件陷阱的个数是根据计算机系统程序的储存空间及疏密性决定的,通常1K 字节的程序放置几个软件陷阱就可以了,在其他的程序存储位置上填充满软件陷阱即可。因此,当跑飞的程序进入此程序区域时,就可以迅速复位到正常的运行状态。

多进程相互看护技术。ucOS 是可以支持多任务的,易于实现多进程和多线程独立运行,即使不用操作系统的,也可以用MCU 的中断机制实现多个线程的相互校验与监视,不同任务放在定时器中断,然后将任务分步骤执行,让时间片轮转,各自标志状态字和PC 寄存器,从而得以发现异常,及时做出处理,通过校验数据,判断是总线还是输入数据、R AM 数据等干扰类型,利用备份的数据恢复现场。

程序跑飞的原因及结果的可预测性较低,一旦出现跑飞必然是要进行系统修复,所以在系统运行中为确保软件的正常工作,需要采用抗干扰技术,摈除外界干扰,但抑制干扰技术也并非百分百可靠,还需研究出更加完备的预防措施。虽然当系统遭受到外界的干扰时,运用上述两种防干扰技术可以有效的使计算机程序重新恢复到正常的运行状态,只是相对地加强了单片机软件的抵抗能力,消除一定的信号干扰。在进行系统软件开发时根据系统的内外环境灵活运用以上两种抗干扰技术,提高单片机软件的抗干扰能力。

三、消息基器件的数据传输速率

在消息基器件中,数据的传输速率较低是由于命令和消息都是以字符的形式发送导致必须由本地的CPU 进行翻译。VXI 消息基接口的执行灵活性高,比作计算机高级语言,以时间为代价提高其标准功能。寄存器基仪器则可比作汇编语言,虽然其执行速度快,但是要直接和硬件底层打交道,相对要困难的多。消息基仪器的编程方便并且易于掌握,开发者和使用者并不需要了解其模块硬件组成及编程原理,极大的减少软件开发的时间和有效降低系统集成的难度。软件开发研究人员大胆猜想,如果将消息基传输方式和寄存器基传输方式两者结合起来,就有可能实现在不影响数据的传输速度情况下,仍使用消息基接口实现器件的智能化。

然而在单片机软件实际操作过程中,消息基的命令都是以消息的形式传输出去的,因此一次只能传输一个数据,造成传输速率的下降,所以在传送大量数据的时候,消息基的这种数据传送方式显然是不合适的。所以研究人员为了提高消息基仪器的数据传输速度,在消息基器件中扩展部分寄存器基接口的成分。数据传输率要求低的部分和命令(如器件初始化)以消息基方式进行控制,这样可以充分发挥消息基接口和寄存器基接口各自的长处。

四、结语

抗干扰技术是单片机应用系统设计过程中的重要部分,它的设计使得在系统遭受到外界的干扰时能使系统恢复正常工作,避免外界的干扰给单片机系统带来严重的破坏,同样也在很大程度上提高了系统的稳定性。

猜你喜欢

看门狗外界消息
外界诱惑大 让你转钱必有诈
一种嵌入式计算机系统的看门狗设计
一张图看5G消息
把他叫醒
晚步见道旁花开
人体对外界环境的感知
设计的外界包容性分析
把它叫醒
把它叫醒