看门狗芯片的选择与软件控制

更新时间:2023-04-25 10:03:32 阅读: 评论:0


2023年4月25日发(作者:朋友圈励志文案 proe教程)

芯片的选择及软件控制看门狗看门狗”

作为一种解决微处山水风光 理器因干扰而死机的有效方法,目前看门狗基本上已经成为MCU

必备辅助外围电路。笔者在单片机应用开发中对于看门狗的使用积累了一定的经验,下面以

看门狗在MCU系统中的应用为例,与同行们做一下交流。

看门狗的工作原理

看门狗是由英文“WATCHDOG”翻译过来的,它的设计使用目的是做微处理器的一个

监控者。微处理器在运行中会受到各种各样的干扰,如电源及空间电磁干扰,当它们超过抗

干扰极限的时候,就有

可能引起微处理器死机。尤其在MCU的应用环境中,更容易受到复杂干扰源的干扰影

响。有了看门狗这个监控,就能够在MCU死机后,重新使它复位恢复运行。

看门狗电路本身是一个带清除端和溢出触发器的定时器,如果不清除它,它就以固定频

率发出溢出触发脉冲。实际使用中把这个触发输出引入到MCU的复位端,使用MCU的一

I/O控制它的清除端。看门狗的监控思路是:MCU正常运行时,软件被设计成定时清除

看门狗定时器,而一旦MCU死机,这时认为MCU不再发出清除脉冲,看门狗定时器溢出,

则秦始皇资料 自动复位MCU

看门狗芯片的选择

早期的看门狗电路一般都是使用NE555或者CD4060等定时芯片搭建的,直到目前,

旧有一些书籍和刊物介绍这些电路,实际上它们早已被独立的看门狗芯片取代了。

提到看门狗,则必须提一下电源监控和上电复位电路。为了使用者的方便,现在的芯片

都把上电复位、电源监控及看门狗集成到一起,如IMP813L就是这样一微波炉烧烤 款芯片。还有的芯

片更是把EEPROM也集成进去,如X5045芯片。现在的MCU被集成了越来越多的功能,

有的集成了看门狗,如PHILIPSP89C51RX2,有的干脆把电源监控和上电复位及RC

钟也集成了进去,如PHILIPSP87LPC762。使用者可以根据自己所选择的具体MCU

配置外围看门狗电路及电源监控,除卵巢早衰的原因 了对功能的选择外,使用看门狗还应该注意它的复位门

莆田装修莆田装修公司

,,/

限电压,一定要确保MCU在看门狗芯片的最小复位门限电压下可以正常工作。

附表列出的一些常用的看门狗芯片可以作为设计参考,更多、更详细的看门狗、电源监

控及复位类芯片资料可以到相关网站上去查阅。

看门狗的软件控制方法

看门狗的使用是需要有合理的控制软件配合的,只有在合理的软件配合下,才能够获得

看门狗的英语人生格言 预计功能,如果使用不当,可能根本发挥不了它的作用,反而会带来负面效果。

1.几种看门狗软件控制方法的误区及解决方法

(八音分类法 1)许多人为了方便,把看门狗的清除控制指令放在系统的定时中断服务程序中,以

为这样可以准确清除看门狗。可是设计者应该注意到这样一个问题,就是MCU即使因为

PC指针受干扰出错,但是定时器不一定会停下来,定时中断可能根本没有受到影响,看门

狗依然被定时清除,它形同虚设。基本的解决方法就是把清除看门狗的脉冲控制指令分散到

主程序的各个部分中去,同时仿真保证两脉冲的最小间隔小于看门狗溢出周期。

2)中断程序中隐含的长执行时间,未清除看门狗,导致系统复位。有一些程序在仿

真的时候顺利通过了看门狗的测试,但使用中偶尔感觉到系统有复位现象。最可能就是中断

超时,比如设计了一个通讯程序,根据对方的要求在一次中断里发送全部数据,一旦没有注

意可能的最大数据长度,就会造成看门狗启动,使系统存在隐患。解决它很简单,就是把数

据接收和发送中断都修改为每个中断只处理一个字节数据。对于其它中断源也要注意,要尽

可能减小中断程序的执行时间,中断程序只留标志和信息,其它工作留给主程序处理。

3)循环程序中隐含超时循环,未能及时清除看门狗,导致系统复位。有些程序中含

有延时、循环计算等片段,并且入口循环参数是由它前面的程序运行结果提供的,在某些未

预见到的情况就会出现比较大的入口条件,导致看门狗超时。尤其对于一些没有显示的黑匣

子设备,根本感觉不到它偶然的复位。解决这个问题的方法就是做一个看门狗清除脉冲子程

序,在延时等循环的圈内中加入它,可以保证万无一失。

2.使用其它软件方法配合看门狗

除了保证对看门狗的合理控制外,还要考虑使用其它软件方法配合看门狗,才能够

莆田装修莆田装修公司

,,/

保证MCU可靠运行。许多书籍在分析MCU失控后的情况时,几乎都假定一般是PC错位,

进入未知区域,并不再进入正常程序代码段。但实际并非如此,以下就两种情况做具体分析,

并给出解决方法。

1)干扰造成PC出错,但出错后进入了正常代码段,并在错误的情况下继续运行,

看门狗没有起作用,但系统实际上已经瘫痪。解决这个问题可以使用软件路标法,几乎所有

软件的主程序都是在一个大循环里工作,可以在循环中设置一些断点,断点处设置路标,

序运行办公室租用 时随时检查路标,这样就可以判断程序是否有非法进入的可能。具体的路标可以是一

个计数器,每个断点加1,在终点清除。因为断点数固定,因此每个断点处路标值固定,只

需要检测路标值就可以进行对非法进入的判断。余下的问题就是发现错误后如何处理,正常

的处理就是设置死循环,等待看门狗复位。对于PHILIPSLPC系列MCU也可以置位

AUXR1寄存器的SRST位立即进行软件复位。

2干扰导致内部寄存器及RAM出错,PC未错,因为错误的数据和标志导致程序

在错误状态下运行。解决这种问题可以采用RAM校验的方法,具体是在MCU的内部RAM

中开辟几个校验区,复位时写入固定代码,如55H或者AAH,并编制校验子程序,运行时

随时调用校验,发现错误马上处理,处理方法同(1。考虑到可靠性,应该多设置几个校验

区,但要付出RAM资源代价,应酌情处理。此方法如果与(1)方法同时使用,则会获得

更好的效果。

结束语

以上对看门狗的芯片选择和软件控制做了一些介绍,通过合理运用,能成功地设计出了

许多应用系统,这些系统在恶劣的环境下都能够正常工作。但设计看门狗的初衷是防止系统

万一死机的弥补措施,设计者本身是希望它永远也不要启动的。因此对于设计MCU系统,

不应该过分依靠看门狗,而应该在电源及抗干扰措施上下足功夫,同时合理选择MCU芯片,

尽可能选择那些抗干扰能力强,同时低EMI的品种。只有在各个环节都精心设计,才能够

保证最终系内蒙高考分数线 统的可靠性。

莆田装修莆田装修公司

,,/


本文发布于:2023-04-25 10:03:32,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/513715.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:看门狗电路
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图