在產(chǎn)品做低功耗的時候,我們會采用一些方法做一些低功耗處理.但是做了低功耗之后,又擔(dān)心程序異常跑飛,而無法自動復(fù)位。
如果我們開啟了IWDG獨立看門狗,做低功耗的話,那么很難做得很好。因為,你需要想辦法不停地給這只狗喂東西。導(dǎo)致低功耗效果不會很理想。而如果采用AWU與WWDG窗口看門狗來做的話,效果還是不錯的。因為WWDG看門狗可以在AWU停止時,也可以設(shè)置不產(chǎn)生復(fù)位信號。
設(shè)置方法如下圖所示,
設(shè)置了這個選項后,WWDG在休眠狀態(tài)下就不會進(jìn)行計數(shù)復(fù)位了。
AWU及WWG的使用步驟大概如下:
1、初始化低速時鐘LSI供給AWU及WWDG
2、初始化AWU相關(guān)的寄存器
3、在AWU中斷清除相關(guān)標(biāo)志(如若沒有,會出現(xiàn)芯片周期性復(fù)位)
代碼如下:
INTERRUPT_HANDLER(AWU_IRQHandler,1)
{
/*Inordertodetectunexpectedeventsduringdevelopment,
itisrecommendedtosetabreakpointonthefollowinginstruction.
*/
AWU->CSR&AWU_CSR_AWUF;
}
4、初始化看門狗
5、在合適的主循環(huán)位置添加喂狗操作.