stm32f103窗口看门狗

stm32有两个看门狗:独立看门狗可以在检测到硬件故障的时候复位cpu,窗口看门狗可以在检测到软件故障的时候复位cpu。

我在程序中使用的是窗口看门狗,它有俩窗口值:上窗口值可以通过配置WWDG->CFR寄存器的底七位,下窗口值是固定的0x40。WWDG_CR的底七位是看门狗的count计数值。

当count在窗口值之外更新或者计数值记到小于0x40的时候,窗口看门狗复位cpu。这里需要注意的是:1、延时函数的喂狗如下

   for(i=0;i<1000;i++){
delayms(1);
FEED_DOG;
2、在调试的时候,在main函数开头加点灯的代码:要先看按复位键的时候灯有没有熄灭。有时候cpu不工作了,灯却还是亮的。这样就不知道狗有没有复位了。

可以通过串口打印相关调试信息。

你可能感兴趣的:(stm32f103窗口看门狗)