Skip to content

WWDG

设置方法

初始化 HAL_WWDG_Init()

Msp初始化 HAL_WWDG_Msp_init()

设置优先级使能中断HAL_NVIC_SetPriority(), HAL_NVIC_EnableIRQ()

编写中断服务函数WWGD_IRQHandler->HAL_WWDG_IRQHandler

在窗口期里面喂狗HAL_WWDG_Refresh()

image-20231130212402198

c
HAL_StatusTypeDef HAL_WWDG_Refresh(WWDG_HandleTypeDef *hwwdg)
{
  /* Write to WWDG CR the WWDG Counter value to refresh with */
  WRITE_REG(hwwdg->Instance->CR, (hwwdg->Init.Counter));//根据手册, 一旦使能, 使能位就不会受软件影响, 所以直接写入不会影响使能位的配置
  /* Return function status */
  return HAL_OK;
}

通过宏__HAL_RCC_GET_FLAG()获取是哪一个引起的中断