STM32的两只狗儿——狗立看门狗
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> STM32 狗立看门狗,由专门的低速时钟 (LSI) 驱动,即便是主时钟发生故障它仍能够有效,所以此狗狗可以工作在与主时钟无关的要求下,或者待机模块下等,所以它叫独立看门狗,注意一旦开启此看门狗则只能由 MCU 复位后才清除,让它不再工作。 它的时钟是一个内部 RC 时钟,它会在 30KHZ 到 60KHZ 之间变化,并非是精确的 40KHZ ,而只是一般计算时取 40KHZ 。 狗立看门狗需设置四个寄存器如下: 其中, 预分频寄存器 (IWDG_PR) ,最低三位 PR[2:0](Prescaler divider) 有效,可设置有 8 种不同的计数器时钟预分频因子。 重装载寄存器 (IWDG_RLR) 低 12 位 RL[11:0]: 看门狗计数器重装载值 (Watchdog counter reload value) 有效,用来设置计数器的重装载值。 注意要设置以上两个寄存器的值需满足两个条件,详见如下。 键寄存器 (IWDG_KR) ,用来控制去除 IWDG_PR 和 IWDG_RLR 写保护功能以便正常写值,向此寄存器写入 0x5555 则暂时去除 IWDG_PR 和 IWDG_RLR 的写保护功能才可向两个寄存器中写值。当向此寄存器写入 0xAAAA 则 IWDG_RLR 的值会重装载,防止 MCU