您的位置 首页 基础

ARM学习之—看门狗(WatchDog)

WatchDog,中文为"看门狗",老外起的名字有时很有趣也很贴切,这些从事技术的老外对生活总是充满了乐观的态度,把工作当成乐趣而不要认为他是痛苦的事情,这样才能把工作做好.否

  WatchDog,中文为"看门狗",老外起的姓名有时很风趣也很恰当,这些从事技能的老外对日子总是充满了达观的情绪,把作业当成趣味而不要以为他是苦楚的作业,这样才能把作业做好.不然就不要去做,天天做自己不喜爱的作业,其结果是很苦楚的.

  相同,我总是喜爱用自己的了解而不是无聊的术语来解说我所了解的东西.

  WatchDog是为了可以避免程序跑飞而运用的一种东西.假如你的程序没有跑飞,那么你的程序会守时的去喂看门狗,假如你的程序跑飞了,那么就不会再去喂狗了,假如超越了喂狗的时刻,那么狗就会自己生成一个信号来从头reset你的CPU,从头开始.这是一种在很重要的状况下避免体系跑飞的一种办法.一般的程序或许不需求,但在特别的状况下可能会需求这种机制.

  咱们在上一篇的图中,第一个地址段便是为看门狗设置的.

  

 

  可以看一下实践的电路.SP706的(-RST)输出低电平时会使LPC2478的CPU复位.关于PFI,-PFO两个管脚来讲,当PFI的电压监控输入低于1.25V时,-PF0会置为LOW.但由于PFI在这里接地,-PFO置空,因而没有运用这一功用.

  由于-MR,-WDO相连接,因而当Vcc低于复位值,-RST将输出200ms的LOW脉冲.而且假如WDI输出坚持高电平1.6s时,看门狗超时,-WDO将置为LOW,也就将-MR置低,一旦-MR置低,-RST便置低,也就将CPU复位.

  当WDI超越1.6s没有来脉冲,也会导致-WDO输出低电平,同理也会是-RST发生复位信号.

  在文档中介绍超时时刻是1.6s,电路中标识为1.2s.我也有点不了解,没有细研讨其原因.而操控看门狗的APB寄存器大概是这样的Name Description Access ResetValue[1] Address

  WDMOD Watchdog mode register. This register contains

  the basic mode and status of the Watchdog Timer. R/W 0 0xE000 0000

  WDTC Watchdog timer constant register. This register

  determines the time-out value. R/W 0xFF 0xE000 0004

  WDFEED Watchdog feed sequence register. Writing 0xAA

  followed by 0x55 to this register reloads the

  Watchdog timer with the value contained in WDTC. WO NA 0xE000 0008

  WDTV Watchdog timer value register. This register

  reads out the current value of the Watchdog timer. RO 0xFF 0xE000 000C

  WDCLKSEL Watchdog clock source selection register. R/W 0 0xE000 0010

  读书的时分,教师总是要求学生学好英语,学理工科的孩子总是不喜爱,没办法,自己看吧.

  看门狗咱们也没有必要把他研讨得那么了解,讲这东西仅仅讲个道理,我也懒得把他解说得完全正确,假如中心讲的有问题,咱们包容,以便咱们可以了解硬件电路,寄存器以及程序之间的联系.实践上,咱们依照参阅规划去做就可以了,在使用中,改动看门狗的状况应该不多.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/jichu/115177.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部