有没有办法stm32 关闭独立看门狗狗

21ic官方微信-->
后使用快捷导航没有帐号?
查看: 3061|回复: 6
STM32的独立看门狗好像没什么用
&&已结帖(0)
主题帖子积分
中级技术员, 积分 101, 距离下一级还需 199 积分
中级技术员, 积分 101, 距离下一级还需 199 积分
主题帖子积分
专家等级:结帖率:88%
主题帖子积分
中级技术员, 积分 101, 距离下一级还需 199 积分
中级技术员, 积分 101, 距离下一级还需 199 积分
现在我的产品已经用了独立看门狗,也测试过正常是能起作用(在主程序里面喂狗,超时不喂的确是可以复位,可以防止死循环)。但并不是由于死循环的死机,比如数组越界操作,或者没有正确写内存,或者中断太密,CPU跳到异常的时候,独立看门狗是没有办法复位的。所以现在没啥作用。
主题帖子积分
主题帖子积分
专家等级:结帖率:36%打赏:0.00受赏:9.00
主题帖子积分
在主程序里面喂狗,只要你的主程序还在运行,狗就不会动作。
不是狗没有用,是你没有好好地用。
I do not teach, but I coach. I do not feed, but I seed.
欢迎访问我的博客:/BLOG_OWNER_199055.HTM
主题帖子积分
初级技术员, 积分 54, 距离下一级还需 46 积分
初级技术员, 积分 54, 距离下一级还需 46 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
初级技术员, 积分 54, 距离下一级还需 46 积分
初级技术员, 积分 54, 距离下一级还需 46 积分
也碰到这样的问题了,要小心!
主题帖子积分
助理工程师, 积分 1144, 距离下一级还需 856 积分
助理工程师, 积分 1144, 距离下一级还需 856 积分
主题帖子积分
专家等级:结帖率:89%
主题帖子积分
助理工程师, 积分 1144, 距离下一级还需 856 积分
助理工程师, 积分 1144, 距离下一级还需 856 积分
那在什么地方喂比较好一些呢
主题帖子积分
主题帖子积分
专家等级:结帖率:36%打赏:0.00受赏:9.00
主题帖子积分
对不起,这个问题要根据具体情况决定,我没有标准答案。
I do not teach, but I coach. I do not feed, but I seed.
欢迎访问我的博客:/BLOG_OWNER_199055.HTM
主题帖子积分
中级技术员, 积分 101, 距离下一级还需 199 积分
中级技术员, 积分 101, 距离下一级还需 199 积分
主题帖子积分
专家等级:结帖率:88%
主题帖子积分
中级技术员, 积分 101, 距离下一级还需 199 积分
中级技术员, 积分 101, 距离下一级还需 199 积分
很显然我的主程序已经没有运行了,因为我的运行灯也是在主程序运行的
主题帖子积分
中级技术员, 积分 133, 距离下一级还需 167 积分
中级技术员, 积分 133, 距离下一级还需 167 积分
主题帖子积分
专家等级:结帖率:80%
主题帖子积分
中级技术员, 积分 133, 距离下一级还需 167 积分
中级技术员, 积分 133, 距离下一级还需 167 积分
喂狗的地方选择感觉很高深
技术新星奖章
人才类勋章
荣誉元老奖章
等级类勋章
坚毅之洋流
发帖类勋章
时间类勋章
技术领袖奖章
人才类勋章
时间类勋章
技术奇才奖章
人才类勋章
欢快之小溪
发帖类勋章
社区建设奖章
等级类勋章查看: 907|回复: 1
关于STM8S独立看门狗的问题有些不懂,求指点下
void main()
&&CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);
&&led_init();
&&iwdg_init();
&&led2(on);
&&while(1)
& &led1(on);
& &delayms(600);
& &led1(off);
& &delayms(600);
下面是子代码
void led_init()
&&GPIO_Init(GPIOD, GPIO_PIN_LNIB, GPIO_MODE_OUT_PP_HIGH_FAST);
#define led1(on_off)&&(on_off==on) ? GPIO_WriteLow(GPIOD, GPIO_PIN_0):GPIO_WriteHigh(GPIOD, GPIO_PIN_0)
#define led2(on_off)&&(on_off==on) ? GPIO_WriteLow(GPIOD, GPIO_PIN_1):GPIO_WriteHigh(GPIOD, GPIO_PIN_1)
#define led3(on_off)&&(on_off==on) ? GPIO_WriteLow(GPIOD, GPIO_PIN_2):GPIO_WriteHigh(GPIOD, GPIO_PIN_2)
#define led4(on_off)&&(on_off==on) ? GPIO_WriteLow(GPIOD, GPIO_PIN_3):GPIO_WriteHigh(GPIOD, GPIO_PIN_3)
void iwdg_init()
&&//使能,启动看门狗
&&IWDG-&KR=0
&&//解除 PR 及 RLR 的写保护
&&IWDG-&KR=0x55;
&&//预分频寄存器
&&//【7-3】必须保持,【2-0】从000到110对应4,8,16,32,64,128,256
&&IWDG-&PR=0x05;//128分频
&&//重装载寄存器,设置复位时间,
&&//复位时间为(value*2)/(128K/128)
&&//例如这个为(200*2)/1000,即400MS不喂狗就复位
&&IWDG-&RLR=200;
&&IWDG-&KR = IWDG_KEY_REFRESH;//0xaa,喂狗
程序里面delayms函数不过400MS就可以led1闪烁,大于400MS就是复位的现象,可是在小于400MS的时候不管喂不喂狗都一样,求大神指导下,感激不尽
 不好意思,乌龙了,逻辑分析仪看后明白了
(27.16 KB, 下载次数: 12)
11:55 上传
(5.8 KB, 下载次数: 12)
11:55 上传
Powered by21ic官方微信-->
后使用快捷导航没有帐号?
查看: 4132|回复: 7
关于看门狗各位是用哪个?独立看门狗还是窗口看门狗
&&已结帖(0)
主题帖子积分
高级技术员, 积分 902, 距离下一级还需 98 积分
高级技术员, 积分 902, 距离下一级还需 98 积分
主题帖子积分
专家等级:结帖率:18%
主题帖子积分
高级技术员, 积分 902, 距离下一级还需 98 积分
高级技术员, 积分 902, 距离下一级还需 98 积分
关于看门狗各位是用哪个?独立看门狗还是窗口看门狗?
主题帖子积分
主题帖子积分
专家等级:结帖率:36%打赏:0.00受赏:9.00
主题帖子积分
这2个狗的功能不同,要根据你自己的具体需要而定。
主题帖子积分
实习生, 积分 34, 距离下一级还需 16 积分
实习生, 积分 34, 距离下一级还需 16 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
实习生, 积分 34, 距离下一级还需 16 积分
实习生, 积分 34, 距离下一级还需 16 积分
感觉独立看门狗和平时用的比较像。但是看资料,没有明白窗口看门狗于普通的有什么区别,就是定时的精度提高些吗?
主题帖子积分
主题帖子积分
专家等级:结帖率:36%打赏:0.00受赏:9.00
主题帖子积分
以前讨论过,你用“窗口看门狗”在论坛中搜索一下。
主题帖子积分
主题帖子积分
专家等级:结帖率:90%打赏:0.00受赏:43.10
主题帖子积分
我看不要用狗了,狗咬狗一撮毛,况STM8这两狗用途不同一个硬件,一个软狗
敬请关注:
竹密不防流水过,山高无障白云飞。
主题帖子积分
助理工程师, 积分 1724, 距离下一级还需 276 积分
助理工程师, 积分 1724, 距离下一级还需 276 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
助理工程师, 积分 1724, 距离下一级还需 276 积分
助理工程师, 积分 1724, 距离下一级还需 276 积分
主题帖子积分
主题帖子积分
专家等级:结帖率:47%
主题帖子积分
提示: 作者被禁止或删除 内容自动屏蔽
主题帖子积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
提示: 作者被禁止或删除 内容自动屏蔽
荣誉元老奖章
等级类勋章
坚毅之洋流
发帖类勋章
时间类勋章
技术领袖奖章
人才类勋章
无冕之王奖章
等级类勋章
奔腾之江水
发帖类勋章
时间类勋章
技术导师奖章
人才类勋章窗口看门狗与独立看门狗的问题,请大神解答 - STM32/STM8技术论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
窗口看门狗与独立看门狗的问题,请大神解答
等待验证会员
15:04:25  
两个看门狗的初始化:
WWDG_Init(0X7F,0X5F,WWDG_Prescaler_8);& &//窗口看门狗初始化,分频系数为8
IWDG_Init(4,625);& & //独立看门狗初始化,分频系数为64
为什么写成
WWDG_Init(0X7F,0X5F,3);
程序不正确
IWDG_Init(IWDG_Prescaler_8,625);
等待验证会员
15:06:11  
也就是说为什么独立看门狗表示分频系数时直接可用数字,而窗口看门狗分频系数则必须使用WWDG_Prescaler_8,直接用数字就会出错呢
22:13:17  
独立看门狗的初始化函数是这样的://初始化独立看门狗
//prer:分频数:0~7(只有低3位有效!)
//分频因子=4*2^prer.但最大值只能是256!
//rlr:重装载寄存器值:低11位有效.
//时间计算(大概):Tout=((4*2^prer)*rlr)/40 (ms).
void IWDG_Init(u8 prer,u16 rlr)
窗口看门狗分频系数使用WWDG_Prescaler_8 是因为底层函数已经封装好的了&&#define WWDG_Prescaler_1& & ((uint32_t)0x)
#define WWDG_Prescaler_2& & ((uint32_t)0x)
#define WWDG_Prescaler_4& & ((uint32_t)0x)
#define WWDG_Prescaler_8& & ((uint32_t)0x)
Powered by独立看门狗_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
独立看门狗
上传于||暂无简介
你可能喜欢}

我要回帖

更多关于 stm32 硬件独立看门狗 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信