单片机看门狗的描述
WDT_CONTR 位置0xE1; [-] [-] [EN_WDT] [CLR_WDT] [IDLE_WDT] [PS2] [PS1] [PS0]
EN_WDT: 看门狗允许位,置 1 启动看门狗,看门狗不能自动启动,需要设置该位后启动,一旦启动不能关闭(只能系统重新上电和看门狗复位可以关闭)
CLR_WDT: 看门狗计数器清零位,置1 清零看门狗计数器,当计数器开始重新计数,硬件清零该位。
IDLE_WDT: 单片机IDLE 模式看门狗允许位,当IDLE_WDT=1时,单片机在 IDLE 模式(空闲模式)依然启用看门狗
PS2~PS0: 看门狗定时器预分频器,下表中 Prescale 表示预分频数
PS2 PS1 PS0 Prescale
0 0 0 2
0 0 1 4
0 1 0 8
0 1 1 16
1 0 0 32
1 0 1 64
1 1 0 128
1 1 1 256
看门狗溢出时间:(N*Prescale*32768)/晶振频率,其中 N 表示指令周期数 N=12 表示 12 时钟周期模式;N=6 表示6时钟周期模式。如N=12,晶振频率为12MHz,PS2~PS0为100时,溢出时间=(12*32*32768)/12=1048576us,差不多是1s。
例如:给WDT_CONTR写入0×34,即是激活看门狗,同时预分频数设为32。喂狗过程也是一样的。
顺便说一下ATMEL-51单片机的看门狗
下面是关于ATMEL-51单片机看门狗的描述
(watchdog timer)是一个14位的计数器,它以机器周期(晶振频率/12)增加,当计数值计满(16383/0×3FFF)了就使单片机软复位;当启动了之后,我们需要在它计数没有满之前复位计数器强制它不能够溢出,这个过程称作喂狗。
一般设置是给 WDTRST 先写入0×1E 再写入0xE1激活看门狗;喂狗过程也是一样的,给 WDTRST 先写入0×1E 再写入0xE1。
单片机看门 相关文章:
- 555定时器芯片实现单片机看门狗电路(12-02)
- stc单片机看门狗喂狗程序(11-29)
- STC89C5X单片机“看门狗”原理详解(11-25)
- MSP430单片机看门狗的使用(11-25)
- avr单片机看门狗初始化配置及说明(11-18)
- MSP430单片机的看门狗使用方法(11-13)