使用WATCHDOG定时器的“WATCHDOG”功能时,在正常的程序中,必须不断重新设置WTCNT寄存器使得它不为零,这个可以保证系统不被重新启动,这称为“喂狗”,当程序崩溃,不能喂狗,计数值达到0后系统将被重新启动,这样程序将重新运行。这就避免了各类系统错误时系统彻底死机。
WATCHDOG需要设置的三个寄存器:
(1)WTCON寄存器(WATCHDOG TIMER CONTROL):
[0]WATCHDOG功能 :定时器到达0时,0 不输出复位信号
1 输出复位信号
[1]中断使能 :0禁止中断
1使能中断
[4:3] :分频系数 00:16分频 divider value
01:32分频
10:64分频
11:128分频
[5]定时器启动 :0停止
1启动
[15:8]预分频系数:0~255 prescaler value
WATCHDOG工作的频率=PCLK/(prescaler value +1)/(divider value)。
(2)WTDAT(WATCHDOG T
WATCHDOG需要设置的三个寄存器:
(1)WTCON寄存器(WATCHDOG TIMER CONTROL):
[0]WATCHDOG功能 :定时器到达0时,0 不输出复位信号
1 输出复位信号
[1]中断使能 :0禁止中断
1使能中断
[4:3] :分频系数 00:16分频 divider value
01:32分频
10:64分频
11:128分频
[5]定时器启动 :0停止
1启动
[15:8]预分频系数:0~255 prescaler value
WATCHDOG工作的频率=PCLK/(prescaler value +1)/(divider value)。
(2)WTDAT(WATCHDOG T

本文介绍了JZ2440处理器的看门狗定时器功能,包括其防止系统死机的机制,以及WTCON、WTDAT和WTCNT三个关键寄存器的作用。通过设置分频系数和预分频系数,可以调整定时器的工作频率。在U-Boot和Kernel中通常会关闭看门狗以避免不必要的系统重启。
最低0.47元/天 解锁文章
1512

被折叠的 条评论
为什么被折叠?



