一、IWDG(独立看门狗的配置)
理解:
1.独立看门狗用的是内部的低速时钟40Khz(实际为30-60Khz)
2.独立看门狗的作用是 将跑飞的程序重新复位(有时候因为强电磁,太阳黑子活动干扰会把程序弄得跑飞)
3.看门狗也就是字面意思,在你程序运行的同时,必须按照一定的时间段来进行 ‘喂狗 ’操作,不然你的狗就会乱叫导致程序复位。
4.独立看门狗其实就是一个递减计数器,当计数器减为0的时候(且没有在减到0之前喂狗)就会触发独立看门狗复位
5.独立看门狗是16位的 最大是65535;意思从最大开始往回递减
独立看门狗的配置:
1.老样子 先在USER文件夹新建好bsp_iwdg.和.h文件(上图)在编写好头文件的套路
2.编写IWDG的初始化函数,相对来说 独立看门狗的初始化函数还是相对简单的
这里可以记一下 8分频 预设值625 大概是1秒产生一次独立看门狗复位
3.编写喂狗函数 其实喂狗函数就一个事情---喂狗
实际实现:
我这里是用的一个单灯闪烁的例子来说明的
可以看到 如果独立看门狗没有产生复位,灯就只会闪烁一次
如果将下面喂狗的程序注释掉,意思独立看门狗就没有被喂狗,意思他递减计数器减到0后就会产生复位,意思我们的灯就会一直闪烁(因为一直在产生复位,这里可以记一下 8分频 预设值625 大概是1秒产生一次独立看门狗复位)