苏州奥联电子科技有限公司
当前位置: 苏州奥联电子科技有限公司 » 单片机

STM32 独立看门狗使用经验(Cortex-M3)

分类:单片机 发布:2018年05月14日 22:13 浏览:904次 Tag:

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


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;                                  

}


相关文章
 
资讯栏目
最新资讯
资讯排行
 

在线咨询