一、独立看门狗简介
独立看门狗(宠物狗);窗口看门狗(警犬)。
独立看门狗:就是一个12位的递减计数器(最大值为0xFFF),当计数器的值从某个值一直减到0的时候,系统就会产生一个复位信号,即IWDG_RESET。如果在计数没减到0之前,刷新了计数器的值的话,那么就不会产生复位信号,这个动作称为喂狗。看门狗功能由VDD电压域供电,在停止模式和待机模式下仍能工作。
独立看门狗工作原理:
二、功能框图
(1)独立看门狗时钟
独立看门狗的时钟由LSI提供,即使主时钟发生故障它仍然有效,非常独立。LSI的频率一般在30 ~ 60KHz之间,根据温度和工作场合会有一定的漂移,我们一般取40KHz,所以独立看门狗的定时时间并不一定非常精确,只适用于对时间精度要求比较低的场合。
(2)计数器时钟
递减计数器的时钟由LSI经过一个8位的预分频器分频得到,可以操作预分频器寄存器IWDG_PR来设置分频因子,分频因子可以是:4,8,16,32,64,128,256。计数器时钟 = LSI / 分频因子(CK_CNT= 40/ 4*2^PRV。)。
(3)计数器
独立看门狗的计数器是一个12位的递减计数器,最大值为0xFFF,当计数器减到0时,会产生一个复位信号IWDG_RESET,让程序重新运行。如果在计数器减到0之前刷新了计数器的值的话,就不会产生复位信号,重新刷新计数器值的动作我们俗称喂狗。
(4)重装载寄存器
重装载寄存器是一个 12 位的寄存器,里