您好,歡迎訪問(wèn)上?,F(xiàn)易電子元器件有限公司網(wǎng)站!
看門(mén)狗的喂狗時(shí)間(看門(mén)狗溢出時(shí)間)計(jì)算公式:
Tout=((4*2^prer)*rlr)/40
其中Tout就是看門(mén)狗溢出時(shí)間(單位ms),prer是看門(mén)狗時(shí)鐘預(yù)分頻值(IWDG_PR值),范圍為0~7,rlr位看門(mén)狗重載值(IWDG_RLR)。
void IWDG_Configuration(void)
{
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //解除寄存器保護(hù)
IWDG_SetPrescaler(IWDG_Prescaler_256); // 寫(xiě)入初始化分頻值 0~7
IWDG_SetReload(0xFFF); //0xfff*256/40k=26s
IWDG_ReloadCounter(); //開(kāi)啟寄存器保護(hù)
IWDG_Enable(); //啟動(dòng)看門(mén)狗
}
初始化完成后 看門(mén)狗開(kāi)始逐漸遞減計(jì)數(shù)到0000并復(fù)位 ,所以在復(fù)位之前要不斷喂狗,即不斷重新加載數(shù)據(jù)到IWDG_RLR中防止復(fù)位。
void IWDG_Feed(void)//喂狗函數(shù)
{
IWDG->KR=0XAAAA;
}
上?,F(xiàn)易電子元器件有限公司 版權(quán)所有 未經(jīng)授權(quán)禁止復(fù)制或鏡像
CopyRight 2020-2025 29711999.com.cn All rights reserved 滬ICP備2020031792號(hào)