繁体中文
高级搜索
 
首页 | 电子技术应用 | 行业最新动态 | 行业最新产品 | 软件资料下载 | 电路图纸欣赏 | 博客文章精选 | 电子精品论坛 | 电子技术贴吧

当前位置:首页 >> 电子技术应用 >> 网络与通信-应用 >> 为网络应用选定看门狗
为网络应用选定看门狗
作者:Maxim 公司 Eric Schlaepfer   来源:今日电子/21IC 发表时间:2008-06-04  字号:  

 

一个看门狗的工作是使嵌入式处理器或微控制器能在对无效的软件状态进行响应后可以复位。在网络应用中,系统工作是不能中断的,看门狗就在确保系统不冻结或跳出死循环的工作中扮演了一个重要角色。

图1 Maxim的MAX6746等看门狗扮演了重要角色


高级别网络功能带来的问题就是系统需要很多时钟。一个简单的看门狗也许是不够的。当不切实际地使用大量基于硬件的定时器时,一批网络定时器就等同于使用了时钟中断信号,而所有的时钟都保持在软件中。不过,在很多应用中,硬件时钟仍然能提供可信任的解决方案。


通常,嵌入式软件有一个能调用不同子程序的主循环,看门狗一旦处在主循环的顶端就会被复位。如果主循环不能正确执行,看门狗就会启动,进而使器件复位。许多网络应用因为看门狗的加入而变得可靠。但是一个看门狗不能直接探测到错误,准确地说,看门狗必须在它复位处理器之前达到预置时间间隔的顶点。


看门狗可以放置在微控制器中间,比如像MAXQ2000,外置在标准的单个IC中或嵌入系统作为支持ASIC的一部分。内置看门狗能省钱,但易被失控的代码所影响。外部的看门狗有一个单独的时钟脉冲源,这使其可靠性大为增加。如果配置正确,它们就不会被失控代码绕过或无效化。


一个通常有效的看门狗功能是“窗户”或“最小/最大值”,当看门狗被操控得太慢或太快,这个功能就能通过发复位信号而增强对正确操作的认证。如果当清空计数寄存器的指令到达而计数寄存器的数量未达阈值时,器件就会触发系统复位。这样不仅防止了软件错误,还能在晶振以错误频率工作的时候复位MPU。另一个功能就是通过外部的逻辑输入或内部的寄存器位来禁止看门狗。

内置于MCU的看门狗


举例来说,我们来看MAXQ2000内部的看门狗。如果不被操控,这个看门狗会触发一个中断,在计数完512个额外的系统时钟周期后重新复位。


这个中断为存储调试信息提供了最后的机会,它是电路开发和故障诊断中一个非常有用的功能。取代了存储调试信息,这个中断能被用来从故障中回复错误和清空看门狗。


像其他内置的看门狗一样,MAXQ2000也能通过软件来终止。不过此功能是把双刃剑,因为失控代码会禁止看门狗,并继续乱闹。


一些微控制器将它们的看门狗连接到独立于系统时钟的晶振上。尽管MAXQ2000的看门狗来自于系统时钟,但电路仍会切换到备用的RF振荡器上以防止主晶振的失控。

外置于MCU的看门狗


很多厂商能提供具备多种功能的专门看门狗IC。比如MAX6752,具有窗口功能,可让用户调整看门狗的超时区域,并用外置电容来调整复位脉冲。


看门狗MAX6369上的逻辑输入管脚能禁止时钟,阻止复位。尽管用逻辑管脚来连接微控制器是很吸引人的,但会给系统带来风险,因为失控代码能随机地禁止看门狗。通常,当微控制器启动的时候,看门狗要在启动阶段被禁止。MAX6369能在复位完毕的时候提供一个额外的长看门狗周期。当看门狗被第一次启动的时候,正常的持续超时就会回归。一些定时器还能提供一个去抖动和ESD保护复位开关输入。


!注意:如果您发现此文章出现影响您的阅读的状况,请从浏览器地址栏里复制本文的链接到留言本报告给站长解决!
  • 上一篇: ISP技术与Internet结合的应用研究
  • 下一篇: “现实世界”的三重播放服务:提供低成本、高质量的端对端VoIP服务

  • >> 联系我们请给我们留言·留言本
    本站所有提供的信息软件资料均来自网络,版权及著作权归原作者所有,如果无意中侵犯了您的相关权利或触及法律法规,请给我们留言, 我们将在24小时内删除。
      浙ICP备05071687号  电子技术精品网