看门狗软件复位

时间:2008-12-25

  看门狗软件复位

  看门狗复位电路主要是利用ARM正常工作时,定时复位计数器,使得计数器的值不超过某一值;当ARM不能正常工作时,由于计数器不能被复位,因此其计数会超过某一值,从而产生复位脉冲,使得ARM恢复正常工作状态。

  看门狗复位电路的可靠性主要取决于软件设计,即将定时向复位电路发出脉冲的程序放在何处,在一般设计中,将此段程序放在定时器中断服务子程序中。然而,有时这种设计仍然会引起程序工作不正常,原因主要是,当程序异常发生在定时器初始化及开中断之后时,这种情况就有可能不能由Watch dog复位电路校正回来。

  因为定时器中断一直在产生,即使程序工作不正常,Watch dog也能被正常复位。为此可以使用定时器加预设的设计方法,即在初始化时压入堆栈一个地址,在此地址内执行的是一条关中断和一条死循环语句。在所有不被程序代码占用的地址尽可能地用子程序返回指令代替,这样,当程序异常后,其进入陷阱的可能性将大大增加。而一旦进入陷阱,定时器就会停止工作并且关闭中断,从而使Watch dog复位电路产生一个复位脉冲将ARM复位。

  看门狗应用程序如下所示。

  欢迎转载,信息来源维库电子市场网(www.dzsc.com


  
上一篇:具有前置镜的投影系统工作距离
下一篇:系统结构与像质

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料