看门狗芯片选择.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
看门狗芯片选择

“看门狗”芯片的选择及软件控制 □ 梁 伟 作为一种解决微处理器因干扰而死机的有效方法,目前看门狗基本上已经成为MCU的必备辅助外围电路。笔者在单片机应用开发中对于看门狗的使用积累了一定的经验,下面以看门狗在MCU系统中的应用为例,与同行们做一下交流。 看门狗的工作原理 看门狗是由英文“WATCH DOG”翻译过来的,它的设计使用目的是做微处理器的一个监控者。微处理器在运行中会受到各种各样的干扰,如电源及空间电磁干扰,当它们超过抗干扰极限的时候,就有可能引起微处理器死机。尤其在MCU的应用环境中,更容易受到复杂干扰源的干扰影响。有了看门狗这个监控,就能够在MCU死机后,重新使它复位恢复运行。 看门狗电路本身是一个带清除端和溢出触发器的定时器,如果不清除它,它就以固定频率发出溢出触发脉冲。实际使用中把这个触发输出引入到MCU的复位端,使用MCU的一个I/O控制它的清除端。看门狗的监控思路是:MCU正常运行时,软件被设计成定时清除看门狗定时器,而一旦MCU死机,这时认为MCU不再发出清除脉冲,看门狗定时器溢出,则自动复位MCU。 看门狗芯片的选择 早期的看门狗电路一般都是使用NE555或者CD4060等定时芯片搭建的,直到目前,仍旧有一些书籍和刊物介绍这些电路,实际上它们早已被独立的看门狗芯片取代了。 提到看门狗,则必须提一下电源监控和上电复位电路。为了使用者的方便,现在的芯片都把上电复位、电源监控及看门狗集成到一起,如IMP813L就是这样一款芯片。还有的芯片更是把EEPROM也集成进去,如X5045芯片。现在的MCU被集成了越来越多的功能,有的集成了看门狗,如PHILIPS的P89C51RX2,有的干脆把电源监控和上电复位及RC时钟也集成了进去,如PHILIPS的P87LPC762。使用者可以根据自己所选择的具体MCU来配置外围看门狗电路及电源监控,除了对功能的选择外,使用看门狗还应该注意它的复位门限电压,一定要确保MCU在看门狗芯片的最小复位门限电压下可以正常工作。附表列出的一些常用的看门狗芯片可以作为设计参考,更多、更详细的看门狗、电源监控及复位类芯片资料可以到和这两个网站上去查阅。 看门狗的软件控制方法 看门狗的使用是需要有合理的控制软件配合的,只有在合理的软件配合下,才能够获得看门狗的预计功能,如果使用不当,可能根本发挥不了它的作用,反而会带来负面效果。 1. 几种看门狗软件控制方法的误区及解决方法 (1) 许多人为了方便,把看门狗的清除控制指令放在系统的定时中断服务程序中,以为这样可以准确清除看门狗。可是设计者应该注意到这样一个问题,就是MCU即使因为PC指针受干扰出错,但是定时器不一定会停下来,定时中断可能根本没有受到影响,看门狗依然被定时清除,它形同虚设。基本的解决方法就是把清除看门狗的脉冲控制指令分散到主程序的各个部分中去,同时仿真保证两脉冲的最小间隔小于看门狗溢出周期。 (2) 中断程序中隐含的长执行时间,未清除看门狗,导致系统复位。有一些程序在仿真的时候顺利通过了看门狗的测试,但使用中偶尔感觉到系统有复位现象。最可能就是中断超时,比如设计了一个通讯程序,根据对方的要求在一次中断里发送全部数据,一旦没有注意可能的最大数据长度,就会造成看门狗启动,使系统存在隐患。解决它很简单,就是把数据接收和发送中断都修改为每个中断只处理一个字节数据。对于其它中断源也要注意,要尽可能减小中断程序的执行时间,中断程序只留标志和信息,其它工作留给主程序处理。 (3) 循环程序中隐含超时循环,未能及时清除看门狗,导致系统复位。有些程序中含有延时、循环计算等片段,并且入口循环参数是由它前面的程序运行结果提供的,在某些未预见到的情况就会出现比较大的入口条件,导致看门狗超时。尤其对于一些没有显示的黑匣子设备,根本感觉不到它偶然的复位。解决这个问题的方法就是做一个看门狗清除脉冲子程序,在延时等循环的圈内中加入它,可以保证万无一失。 2. 使用其它软件方法配合看门狗 除了保证对看门狗的合理控制外,还要考虑使用其它软件方法配合看门狗,才能够保证MCU可靠运行。许多书籍在分析MCU失控后的情况时,几乎都假定一般是PC错位,进入未知区域,并不再进入正常程序代码段。但实际并非如此,以下就两种情况做具体分析,并给出解决方法。 (1)干扰造成PC出错,但出错后进入了正常代码段,并在错误的情况下继续运行,看门狗没有起作用,但系统实际上已经瘫痪。解决这个问题可以使用软件路标法,几乎所有软件的主程序都是在一个大循环里工作,可以在循环中设置一些断点,断点处设置路标,程序运行时随时检查路标,这样就可以判断程序是否有非法进入的可能。具体的路标可以是一个计数器,每个断点加1,在终点清除。因为断点数固定,因此每个断

文档评论(0)

zhuwenmeijiale + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档