STM32看门狗的小结
STM32看门狗的小结
看门狗的作用:在系统层序跑飞的情况下,使系统复位,程序重新执行。
初始化看门狗:包括预分频数,重装载值。需要用到这个函数HAL_IWDG_Start(IWDG_HandleTypeDef *hiwdg);
都需要一个句柄:IWDG_HandleTypeDef iwdg_handler;
溢出时间计算:
Tout=((4*2^prer)*rlr)/32
其中PRER是预分频,rlr是重装载值。
iwdg_handler.Instance = IWDG; iwdg_handler.Init.Prescaler = IWDG_PRESCALER_64; iwdg_handler.Init.Reload = 500; HAL_IWDG_Init(&iwdg_handler);
在初始化完成之后,可以开启看门狗:HAL_IWDG_Start(&iwdg_handler);
然后就是执行喂狗操作,避免看门狗复位、
while(1) { if(KEY_Scan(0) == WKUP_PRES) { HAL_IWDG_Refresh(&iwdg_handler); } delay_ms(10); }