目录硬知识测试程序main.c现象
普中51-单核-A2
STC89C52
Keil uVision V5.29.0.0
pk51 prof.developerskitversion :9.60.0.0
硬件知识摘自《STC89C52系列单片机器件手册》
适用模型:
STC89C51、STC89C52、STC89C53、STC89C14、STC89LE51、STC89LE52、STC89LE14、STC89C54、STC89C58、STC89C516、
在工业控制/汽车电子/航空航天等需要高可靠性的系统中,为了防止“在系统异常的情况下,受到干扰,MCU/CPU程序飞出,系统长时间异常动作”,一般导入看门狗。 如果MCU/CPU在规定时间内不访问看门狗,则识别为MCU/CPU处于异常状态,看门狗被强制访问MCU/CPU
在STC89C52系列单片机内部也引入了该看门狗功能,使单片机系统的可靠性设计更加方便、简洁。 因此,以下特殊功能寄存器wdt _ contr:http://www.Sina.com/http://www.Sina.com /
看门狗许可位,设定为“1”时启动看门狗。WDT_CONTR: 看门狗(Watch-Dog-Timer)控制寄存器
看门狗清除“0”位,如果设置为“1”,看门狗将重新计数。 硬件自动清除“0”位。EN_WDT :
看门狗计时器为" IDLE "模式位,如果设定为"1",则以"空闲模式"进行计数
清除“0”时,看门狗计时器为“空闲模式”时,为CLR_WDT :
看门狗计时器的事先分频值如下表所示
看门狗溢出时间=(12=) 12=(12预缩放32768 ) ) 32768 )/32768 )/Oscillator frequency
可以视为16位的计时器:
2个看门狗溢出时间=12/=12/=12/oscillator frequency65536 [ PS 2: PS0]2^ { [ PS 2: PS0] }2[ PS 23360 PS0]
测试程序main.c初始化看门狗,[PS2:PS0]=0,晶体频率为11.0592MHz时,看门狗溢出时间=12/=12/11.0592 m655362 [ PPP
# includes TC 89 C5 xrc.h # define wdt _ en0x 20 # define wdt _ dis0x 00 # define wdt _ clr0x 10 # define wdt _ idle _ en0x 08 # define P20=0; 威尔(1) }现象