Beaglebone Black中的WatchDog计时器

时间:2015-06-12 12:29:00

标签: beagleboneblack watchdog

我在一个项目中使用BeagleBone Black,想知道是否有人知道内部WDT(WatchDog Timer)的限制。它可以做什么,不能做什么?我是BeagleBone和WDT的初学者......

谢谢!

1 个答案:

答案 0 :(得分:1)

引用来自" AM335x Sitara™处理器 - 技术参考手册":

  

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

WDT基本上是一个时钟设备,这是一个hw。寄存器,其值经常以准确的频率自动增加。还有一个硬件比较器,其目标是每次WDT溢出时触发IRQ。与传统计时器的区别在于IRQ上的默认操作:在这种情况下(WDT)将重置板。

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

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

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

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

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