首页 > 代码库 > m0系列函数独立看门狗配置
m0系列函数独立看门狗配置
独立看门口配置
//main.c 中main函数前
static void IWDG_Config(void) { RCC_LSICmd(ENABLE); /*!< Wait till LSI is ready */ while (RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET); IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); IWDG_SetPrescaler(IWDG_Prescaler_256); //LSI频率为40K IWDG_SetReload(1562); //定时10s , 781 = 10000ms * 40 / 256; 最大为0XFFF IWDG_ReloadCounter(); IWDG_Enable(); }
//main函数开头中
if (RCC_GetFlagStatus(RCC_FLAG_IWDGRST) != RESET) { RCC_ClearFlag(); }
//main函数初始化部分中
Systick_Init();//systick中断中用于喂狗等 IWDG_Config();
//中断中写
void Systick_Init(void) { // if (SysTick_Config(SystemCoreClock / 1000))//1ms if (SysTick_Config(SystemCoreClock / 100))//10ms { while (1); } }
void SysTick_Handler(void) { static u16 l_u16Tick = 0; l_u16Tick ++; if(!(l_u16Tick % 100)) { g_u8Flg_1S = 1; IWDG_ReloadCounter(); //喂狗 } }
m0系列函数独立看门狗配置
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。