stm32的最小系统能实现看门狗程序吗?

2019-07-18 17:25发布

STM32f103的最小系统怎么实现看门狗程序
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
guotong1984
1楼-- · 2019-07-18 22:28
独立看门狗还是窗口的
迅得电子
2楼-- · 2019-07-19 02:11
有两种看门狗模式独立看门狗和窗口看门狗,你先看看这两种的区别。
附上看门狗代码:
/**
* 初始化独立看门狗
* 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();//喂狗
  }        
}
看门狗3.png

一周热门 更多>