OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2653|回复: 8

新手关于窗口看门狗的一个小问题

[复制链接]

10

主题

42

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2015-11-11
在线时间
29 小时
发表于 2016-12-14 16:26:31 | 显示全部楼层 |阅读模式
1金钱
思路和视频上的是一样的,就是没有设置那么多子函数,而是直接调用库函数。然后小灯就闪不了了。下载模板代码就可以闪,求指教!
源文件:
[mw_shl_code=c,true]#include "wwdg.h"
#include "stm32f10x.h"
#include "sys.h"
#include "delay.h"
#include "led.h"

void WWDG_Init(u8 tr,u8 wr,u32 pres)
{
       
        NVIC_InitTypeDef NVIC_InitTypeStructure;
       
        RCC_APB1PeriphClockCmd(RCC_APB1Periph_WWDG,ENABLE);
       
        WWDG_SetPrescaler(pres);
       
        WWDG_SetWindowValue(wr);
       
        WWDG_EnableIT();
       
        NVIC_InitTypeStructure.NVIC_IRQChannel=WWDG_IRQn;
        NVIC_InitTypeStructure.NVIC_IRQChannelCmd=ENABLE;
        NVIC_InitTypeStructure.NVIC_IRQChannelPreemptionPriority=2;
        NVIC_InitTypeStructure.NVIC_IRQChannelSubPriority=3;
        NVIC_Init(&NVIC_InitTypeStructure);
       
        WWDG_ClearFlag();
       
        WWDG_Enable(tr);

}

void WWDG_IRQHandler()
{       
        LED1=!LED1;
        WWDG_SetCounter(0x5f);
        WWDG_ClearFlag();       
}

[/mw_shl_code]

主函数:
[mw_shl_code=c,true]#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "beep.h"
#include "wwdg.h"

/************************************************
ALIENTEK战舰STM32开发板实验3
按键输入实验  
技术支持:www.openedv.com
淘宝店铺:http://eboard.taobao.com
关注微信公众平台微信号:"正点原子",免费获取STM32资料。
广州市星翼电子科技有限公司  
作者:正点原子 @ALIENTEK
************************************************/


int main(void)
{
        vu8 key=0;       
        delay_init();                     //延时函数初始化          
        LED_Init();                             //LED端口初始化
        KEY_Init();          //初始化与按键连接的硬件接口
        BEEP_Init();                 //初始化蜂鸣器端口
        WWDG_Init(0x7f,0x5f,WWDG_Prescaler_8);
        LED0=0;                                        //先点亮红灯
        while(1)
        {
                LED0=1;
               
        }
}

[/mw_shl_code]


最佳答案

查看完整内容[请看2#楼]

对比改了的地方 另外,窗口看门狗的初始化顺序,喂狗顺序,不要随意改,不然会出问题比较奇葩。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2016-12-14 16:26:32 | 显示全部楼层
对比改了的地方
另外,窗口看门狗的初始化顺序,喂狗顺序,不要随意改,不然会出问题比较奇葩。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3772
金钱
3772
注册时间
2015-4-26
在线时间
765 小时
发表于 2016-12-14 16:34:12 | 显示全部楼层
没喂狗
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2016-12-14 17:26:29 | 显示全部楼层
窗口看门狗中断服务函数里面这一行代码WWDG_SetCounter(0x5f),设置为0X7F试试!
回复

使用道具 举报

10

主题

42

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2015-11-11
在线时间
29 小时
 楼主| 发表于 2016-12-14 18:18:08 来自手机 | 显示全部楼层
来俩不甜的 发表于 2016-12-14 16:34
没喂狗

中断里这个就是呀WWDG_SetCounter(0x5f);
回复

使用道具 举报

10

主题

42

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2015-11-11
在线时间
29 小时
 楼主| 发表于 2016-12-15 09:42:13 | 显示全部楼层
zuozhongkai 发表于 2016-12-14 17:26
窗口看门狗中断服务函数里面这一行代码WWDG_SetCounter(0x5f),设置为0X7F试试!

还是不行
回复

使用道具 举报

10

主题

42

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2015-11-11
在线时间
29 小时
 楼主| 发表于 2016-12-15 10:15:35 | 显示全部楼层
[mw_shl_code=c,true] int main(void)
{               
        delay_init();                     //延时函数初始化          
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
        uart_init(115200);         //串口初始化为115200
        LED_Init();
        KEY_Init();          //按键初始化         
        LED0=0;
        delay_ms(300);          
        WWDG_Init(0X7F,0X5F,WWDG_Prescaler_8);//计数器值为7f,窗口寄存器为5f,分频数为8          
        while(1)
        {
                LED0=1;                                    
        }   
}[/mw_shl_code]

现在对主程序做了调整,之前中断忘记设置。设置完还是没有效果,然后将WWDG_Init(0X7F,0X5F,WWDG_Prescaler_8);放在while前面,还加了delay_ms(300);        延时。现在LED0常亮,LED1间断微光闪(和模板程序一样)。 看不懂了-.-
回复

使用道具 举报

10

主题

42

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2015-11-11
在线时间
29 小时
 楼主| 发表于 2016-12-16 21:19:43 | 显示全部楼层
真心求助!
回复

使用道具 举报

10

主题

42

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2015-11-11
在线时间
29 小时
 楼主| 发表于 2016-12-18 21:46:46 | 显示全部楼层
正点原子 发表于 2016-12-17 18:25
对比改了的地方
另外,窗口看门狗的初始化顺序,喂狗顺序,不要随意改,不然会出问题比较奇葩。

好的我再试试,多谢原子哥!!
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-26 05:56

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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