【问题标题】:WatchDog Timer in Beaglebone BlackBeaglebone Black 中的 WatchDog 计时器
【发布时间】:2015-06-12 12:29:00
【问题描述】:

我在一个项目中使用 BeagleBone Black,想问是否有人知道内部 WDT(看门狗定时器)的限制。它能做什么,不能做什么?我是 BeagleBone 和 WDT 的初学者...

谢谢!

【问题讨论】:

    标签: beagleboneblack watchdog


    【解决方案1】:

    引自“AM335x Sitara™ 处理器 - 技术参考手册”:

    看门狗定时器是一个向上计数器,能够在复位引脚上产生一个脉冲和一个中断 到设备系统模块后溢出条件。看门狗定时器用于复位到 PRCM 模块并为主机 ARM 提供看门狗中断服务。 PRCM 模块的复位会导致 设备的热重置。

    WDT 实质上是一个时钟设备,即硬件。寄存器,其值以准确的频率定期自动增加。还有一个硬件比较器,其目标是在每次 WDT 溢出时触发一个 IRQ。与传统计时器的不同之处在于对 IRQ 执行的默认操作:在这种情况下 (WDT) 是重置板。

    WDT 的主要目标是对运行时环境(或内核)冻结且不再响应的错误情况作出反应。发生这种情况时,运行时不会重置 WDT,因此它会溢出,启动 IRQ 并重置板,以便运行时环境可以重新控制板。

    要使用此功能(如果您不希望每x 秒重置您的电路板,您有义务),您必须在 WDT_WTGR 寄存器(硬件地址 - 0x44E35030)中写入任何值以导致时间计数器重新加载并避免电路板重置。我注意到在 Beaglebone Black 上大约 50 秒后 WDT 溢出,因此您必须每隔 x < 50 秒写入一个值。

    但是,如果您计划实现要加载到板上的裸机应用程序,这将是有效的。换句话说,WDT 由 UBoot(BBB 默认引导加载程序)或 Linux 内核正确处理,因此您不必担心这一点。

    我希望我已经消除了您的疑虑! :-)

    进一步阅读: http://www.ti.com/lit/ug/spruh73m/spruh73m.pdf - 第 20.4 节

    【讨论】:

      猜你喜欢
      • 2016-04-19
      • 1970-01-01
      • 2014-09-19
      • 2016-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多