当前位置:首页 > 单片机 > 单片机
[导读] 看门狗的喂狗时间(看门狗溢出时间)计算公式:Tout=((4*2^prer)*rlr)/40其中Tout就是看门狗溢出时间(单位ms),prer是看门狗时钟预分频值(IWDG_PR值),范围为0~7,rlr位看门狗重载值(IWDG_RLR)。

 

看门狗的喂狗时间(看门狗溢出时间)计算公式:

 

Tout=((4*2^prer)*rlr)/40

 

其中Tout就是看门狗溢出时间(单位ms),prer是看门狗时钟预分频值(IWDG_PR值),范围为0~7,rlr位看门狗重载值(IWDG_RLR)。

 

void IWDG_Configuration(void)

{

IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //解除寄存器保护

IWDG_SetPrescaler(IWDG_Prescaler_256); // 写入初始化分频值 0~7

IWDG_SetReload(0xFFF); //0xfff*256/40k=26s

IWDG_ReloadCounter(); //开启寄存器保护

IWDG_Enable(); //启动看门狗

}

 

初始化完成后 看门狗开始逐渐递减计数到0000并复位 ,所以在复位之前要不断喂狗,即不断重新加载数据到IWDG_RLR中防止复位。

 

void IWDG_Feed(void)//喂狗函数

{

IWDG->KR=0XAAAA;

}

 

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭