1. 程式人生 > >STM32 IWDG喂狗時間計算

STM32 IWDG喂狗時間計算

STM323 IWDG獨立看門狗,功能和相關介紹就不用再作說明了,配置過程如下

//配置步驟:

//1、向IWDG_KR寫入0x5555,取消IWDG_PR和IWDG_RLR的防寫;
//2、配置IWDG_PR(分頻值)和IWDG_RLR(重灌置)的值;
//3、向IWDG_KR寫入0xAAAA,喂一次狗,使STM32重新載入IWDG_RLR的值
//4、向IWDG_KR寫入0xCCCC,啟動看門狗,記得在程式相關處每隔一段時間喂狗

相應程式碼程式:
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); 
IWDG_SetPrescaler(IWDG_Prescaler_8);
IWDG_SetReload(0xFFF);
IWDG_ReloadCounter(); 
IWDG_Enable();

其中關於喂狗時間計算,請看下錶:


舉個例子:

如果 IWDG_SetPrescaler(IWDG_Prescaler_8);即為8分頻

IWDG_SetReload(0xFFF);

檢視上表,可以得知,IWDG計時時間為8192.2ms,如果超過改時間段還沒有進行喂狗程式,將視為程式跑飛,會執行初始化程式

表83來自網際網路.