其实可以直接参考demo,只不过有两个要点。
1.demo里面的配置呢,PCLK3是150M,我开始用的工程,系统时钟是600M,我的APH3分频呢是2,代码如下:
/* APB3 = AHB / 2 */
RCU_CFG0 |= RCU_APB3_CKAHB_DIV2;
我就以为分频之后呢,APH3是300M,按照demo的计算,(请注意,我这是错误示范!!!)
set WWDGT clock = (PCLK3 (300MHz)/4096)/8 = 9156Hz (~109 us) 因为此处WWDG配置为8分频WWDGT_CFG_PSC_DIV8
refresh window is: ~109 * (127-80)= 5.1ms < refresh window < ~109 * (127-63) =6.9ms.
测试的时候都不对,最后回归规格书发现,这里PCLK3最高就150M:
2.窗口看门狗要注意设置窗口值,也就是说,它不仅时间长了要复位,由于是递减计数,时间太短了,还没减到上限值你就喂狗了,它也复位。以下方demo为例,喂狗间隔小于10.3ms,也会复位的。
WWDG配置如下:
int<