參考1:https://blog.csdn.net/qq_37957854/article/details/105644138
參考2:https://blog.csdn.net/qq_34377445/article/details/106545845
參考3:鏈接
公式:Tout=(4*2^prer)*rlr / 40
prer是預分頻寄存器(IWDG_PR)的值,是預分頻因子
void IWDG_Init(u8 prer,u16 rlr) { IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//去除寫保護 IWDG_SetPrescaler(prer);//設置預分頻系數 IWDG_SetReload(rlr);//設置重載值 IWDG_ReloadCounter();//喂狗 IWDG_Enable();//獨立看門狗使能 }
IWDG_Init(4,625);//4是prer,Tout我們需要它為1s,由於單位是ms,所以
計算過程:
1000=(4*2^4)*rlr/40
64*rlr = 1000*40
rlr = 40000/64
rlr = 625