找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1009|回复: 0
收起左侧

看门狗

[复制链接]
ID:586218 发表于 2019-7-18 10:53 | 显示全部楼层 |阅读模式

/**
* 初始化独立看门狗
* prer:分频数:0~7(只有低 3 位有效!)
* 分频因子=4*2^prer.但最大值只能是 256!
* rlr:重装载寄存器值:低 11 位有效.
* 时间计算(大概):Tout=((4*2^prer)*rlr)/40 (ms).
*IWDG_Init(4,625);//初始化独立看门狗,分频数为64,重装载值为625,溢出时间计算为:64*625/40=1000ms=1s
*/
void IWDG_Init(u8 prer,u16 rlr)
{
    IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); /* 使能对寄存器IWDG_PR和IWDG_RLR的写操作*/
    IWDG_SetPrescaler(prer);    /*设置IWDG预分频值:设置IWDG预分频值*/
    IWDG_SetReload(rlr);     /*设置IWDG重装载值*/
    IWDG_ReloadCounter();    /*按照IWDG重装载寄存器的值重装载IWDG计数器*/
    IWDG_Enable();        /*使能IWDG*/
}

/**
* 喂独立看门狗
*/
void IWDG_Feed(void)
{
    IWDG_ReloadCounter();    /*reload*/
}

/**
*main函数
*/
void main(void)
{
  NVIC_Configuration();//优先级配置
  IWDG_Init(4,625);//初始化独立看门狗,分频数为64,重装载值为625,溢出时间计算为:64*625/40=1000ms=1s
 while(1)
  {
    delay_ms(500);//0.5秒喂一次狗
      IWDG_Feed();//喂狗
  }        
}


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表