前言
**废话:**前面已经学习了CubeMx配置工程的相关用法,本节我们就来看看这所谓的看门狗可以溜着玩不。。。
独立看门狗简介
看门狗的原理: 单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,看门狗电路就是为了避免这种情况的发生。看门狗的作用就是在一定时间内(通过定时计数器实现)没有接收喂狗信号(表示MCU已经挂了),便实现处理器的自动复位重启(发送复位信号)。
看门狗寄存器的运行机制:
① 独立看门狗时钟源:一般由独立的RC振荡器LSI提供。
② 计数器时钟:递减计数器的时钟由LSI经过一个八位的预分频器得到,可以通过操作寄存器IWDG_PR来设置分频因子,分频因子的取值为:4、8、16、32、64、128、256。
计数器时钟CK_CNT= LSI/ 4*2^PRV(分频因子)
③ 计数器:独立看门狗的计数器是一个 12 位的递减计数器,最大值为 0XFFF,当计数器减到 0时,会产生一个复位信号:IWDG_RESET,让程序重新启动运行,如果在计数器减到 0 之前刷新了计数器的值的话,就不会产生复位信号,重新刷新计数器值的这个动作我们俗称喂狗。
④ 重装载寄存器