大家帮帮忙看看,~~~(这个)WWDG_SetCounter(WWDG_CNT)怎么调用~~~(这个) WWDG_Set_Counter(u8 cnt)的?

2019-08-17 10:36发布

                    //重设置WWDG计数器的值 ~~~(这个)  void WWDG_Set_Counter(u8 cnt)                         {                            WWDG_Enable(cnt);//使能看门狗 , 设置 counter .                                }                         //窗口看门狗中断服务程序                           void WWDG_NVIC_Init()                             {                 NVIC_InitTypeDef NVIC_InitStructure;                 NVIC_InitStructure.NVIC_IRQChannel = WWDG_IRQn;    //WWDG中断                 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;   //抢占2,子优先级3,组2                     NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3; //抢占2,子优先级3,组2                 NVIC_Init(&NVIC_InitStructure);//NVIC初始化                           }
                         void WWDG_IRQHandler(void)                     {
~~~(这个) WWDG_SetCounter(WWDG_CNT);  //当禁掉此句后,窗口看门狗将产生复位
                             WWDG_ClearFlag();  //清除提前唤醒中断标志位
                              LED1=!LED1; //LED状态翻转                        }



是不是少了一个下划线(_)?






友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
飞天奇侠
1楼-- · 2019-08-17 11:09
自己最近正在学,发表一下我的观点:
WWDG_CR寄存器的第七位WDGA是看门狗的激活位,该位由软件置1以启动看门狗,该位一旦置1后,就只能在硬件复位后清零,因此完整的程序里WWDG_Init()函数里WWDG_Enable()启动看门狗之后,接下来WDGA位软件即使写0也不会关闭看门狗,而WWDG_Enable()以及喂狗函数WWDG_SetCounter()唯一的区别就是关于WDGA位的设置。至于WWDG_Set_Counter()函数,提供的程序里只是定义了一下,中断函数里根本就没用到。
wobukansanguo
2楼-- · 2019-08-17 11:42
回复【楼主位】yinhu:
---------------------------------
少没少,楼主gitodefinition就知道了
wobukansanguo
3楼-- · 2019-08-17 14:54
 精彩回答 2  元偷偷看……
yinhu
4楼-- · 2019-08-17 20:12
回复【3楼】wobukansanguo:
---------------------------------但是明明是WWDG_SetCounter调用的 WWDG_Set_Counter,还是不明白?
wobukansanguo
5楼-- · 2019-08-17 23:43
回复【4楼】yinhu:
回复【3楼】wobukansanguo: ---------------------------------但是明明是WWDG_SetCounter调用的 WWDG_Set_Counter,还是不明白?
---------------------------------
什么啊?那是2个函数的嘛
yinhu
6楼-- · 2019-08-18 04:35
你可以看看原子哥的视频,第12讲。或许是我理解错了吧!求原子哥帮助……

一周热门 更多>