stm32 獨立看門(mén)狗
/*
* 采用獨立看門(mén)狗作為看門(mén)狗定時(shí)器
* 獨立看門(mén)狗由內部專(zhuān)門(mén)的 40Khz 低速時(shí)鐘驅動(dòng),
* 即使主時(shí)鐘發(fā)生故障,它也仍然有效
*000:預分頻因子=4 // 最短時(shí)間 0.1 ms
*001:預分頻因子=8 // 最短時(shí)間 0.2 ms
*010:預分頻因子=16 // 最短時(shí)間 0.4 ms
*011:預分頻因子=32 // 最短時(shí)間 0.8 ms
*100:預分頻因子=64 // 最短時(shí)間 1.6 ms
*101:預分頻因子=128 // 最短時(shí)間 3.2 ms
*110:預分頻因子=256 // 最短時(shí)間 6.4 ms
*111:預分頻因子=256 //
*/
初始化,并且啟動(dòng)看門(mén)狗
void IWDG_Initial(void)
{
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //①使能對寄存器 I 寫(xiě)操作
IWDG_SetPrescaler(IWDG_Prescaler_16); //②設置 IWDG 預分頻值:設置 IWDG 預分頻值
IWDG_SetReload(0xFFF); //②設置 IWDG 重裝載值 定時(shí)時(shí)間1638.4ms
IWDG_ReloadCounter(); //③按照 IWDG 重裝載寄存器的值重裝載 IWDG 計數器
IWDG_Enable(); //④使能 IWDG
}
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//使能寫(xiě)入PR和RLR
主程序中喂狗
void main void
{
while(1)
{
IWDG_ReloadCounter();// 喂狗 1.6 s的看門(mén)狗
}
}
評論