原子窗口看门狗例程--理解求助

2019-07-20 21:15发布

[mw_shl_code=c,true]int main(void) { NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2 delay_init(168); //初始化延时函数 LED_Init(); //初始化LED端口 KEY_Init(); //初始化按键 LED0=0; //点亮LED0 delay_ms(300); WWDG_Init(0x7F,0X5F,WWDG_Prescaler_8); //计数器值为7f,窗口寄存器为5f,分频数为8 // while(1) // { // LED0=1; //熄灭LED灯 // } }[/mw_shl_code] 本人使用原子的探索者开发板
上面这个原子窗口看门狗例程中的main函数的内容,我发现led一直在闪烁。即使屏蔽掉while的死循环也是led在闪烁。
所以,我想问的是,难道说每次看门狗中断了都将程序复位了吗?还是?这个地方我想不太明白,求解答。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
23条回答
huaiqiao
1楼-- · 2019-07-22 00:12
回复【7楼】攻城狮:
---------------------------------
问题是中断服务函数中    WWDG_SetCounter(WWDG_CNT); 就喂狗了啊。
numbqq
2楼-- · 2019-07-22 00:37
回复【8楼】huaiqiao:
---------------------------------
都已经溢出产生中断了,在喂狗有啥意义
huaiqiao
3楼-- · 2019-07-22 01:28
 精彩回答 2  元偷偷看……
攻城狮
4楼-- · 2019-07-22 04:49
回复【8楼】huaiqiao:
---------------------------------
你都已经溢出出才喂狗有什么用,裸机跑一般在主程序喂狗。有些不能喂狗太频繁,有时间限制的,具体要看情况吧
正点原子
5楼-- · 2019-07-22 10:33
 精彩回答 2  元偷偷看……
huaiqiao
6楼-- · 2019-07-22 13:27
回复【12楼】正点原子:
---------------------------------
恩恩,怪我没有描述清楚。是这样的,原子哥。
这个程序在下载到开发板上现象是
                                             1、 DS0(LED0红灯)熄灭,这个我可以理解;
                                             2、 DS1(LED1绿灯)闪烁,
于是,我将main函数中的while的死循环屏蔽掉,现象是:
                                             1、DS0(LED0红灯)点亮,这个不难理解;
                                             2、DS1(LED1绿灯)也在闪烁,
因为在main函数中,    WWDG_Init(0x7F,0X5F,WWDG_Prescaler_8)这个只有一次。而中断服务函数却一直在执行,所以我就有了楼主位的疑问:难道说每次看门狗中断了都将程序复位了吗?  这个地方想不太明白

一周热门 更多>