OpenEdv-开源电子网

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

窗口看门狗的疑问

[复制链接]

4

主题

13

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2014-1-2
在线时间
0 小时
发表于 2014-1-6 10:45:14 | 显示全部楼层 |阅读模式


窗口看门狗的超时公式如下:
 
         Twwdg=(4096×2^WDGTB×(T[5:0]+1)) /Fpclk1;
其中:
 
Twwdg:WWDG 超时时间(单位为 ms)
 
Fpclk1:APB1的时钟频率(单位为 Khz)
 
WDGTB:WWDG 的预分频系数
 
T[5:0]:窗口看门狗的计数器低 6位

4096怎么来的?还有就是T[6:0]是减法计数器为什么这里用(T[5:0]+1)

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
131
金钱
131
注册时间
2015-1-14
在线时间
24 小时
发表于 2015-2-2 14:13:46 | 显示全部楼层
回复【3楼】jermy_z:
---------------------------------
回复【8楼】ZCD:
---------------------------------
stm32f4中文开发手册上在配置寄存器(WWDG_CFR)是这么写的:
位 8:7 WDGTB[1:0]:定时器时基 (Timer base)
可按如下方式修改预分频器的时基:
00:CK 计数器时钟 (PCLK1 div 4096) 分频器 1
01:CK 计数器时钟 (PCLK1 div 4096) 分频器 2
10:CK 计数器时钟 (PCLK1 div 4096) 分频器 4
11:CK 计数器时钟 (PCLK1 div 4096) 分频器 8
这里PCLK1就是APB1的时钟频率,说明
Twwdg=(4096×2^WDGTB×(T[5:0]+1)) /Fpclk1应该是
Twwdg=(2^WDGTB×(T[5:0]+1)) /(Fpclk1/4096)变换得来的,
Fpclk1/4096就是计数器时钟
回复 支持 3 反对 0

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13129
金钱
13129
注册时间
2012-11-26
在线时间
3814 小时
发表于 2014-3-4 13:52:39 | 显示全部楼层
回复【楼主位】灰太狼:

                                         
     
窗口看门狗的超时公式如下: 
 
         Twwdg=(4096×2^WDGTB×(T[5:0]+1)) /Fpclk1; 
其中: 
 
Twwdg:WWDG 超时时间(单位为 ms) 
 
Fpclk1:APB1的时钟频率(单位为 Khz) 
 
WDGTB:WWDG 的预分频系数 
 
T[5:0]:窗口看门狗的计数器低 6位 
4096怎么来的?还有就是T[6:0]是减法计数器为什么这里用(T[5:0]+1)

---------------------------------
就是这么规定的,非要钻牛角尖问哪来的干嘛,你会计算不就得了,都知道1+1=2,你为什么不问1+1为什么=2呢?
学无止境
回复 支持 0 反对 2

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2017-9-5
在线时间
2 小时
发表于 2017-9-20 23:39:52 | 显示全部楼层
本帖最后由 lfsdq 于 2017-9-20 23:41 编辑

上窗口时间W[6:0]范围为0-127,下窗口时间0x3F(即63),W[6:0]-0X3F最大值为64,但又必须大于1,故范围为1-64,即T[5:0]+1范围为1-64就是窗口时间范围
回复 支持 1 反对 0

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2013-12-28
在线时间
2 小时
发表于 2014-3-4 13:01:22 | 显示全部楼层
这个帖子为什么没有回答啊?新手表示这里同样没看懂。。
回复 支持 反对

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13129
金钱
13129
注册时间
2012-11-26
在线时间
3814 小时
发表于 2014-3-4 13:53:08 | 显示全部楼层
原来是坟贴。。。
学无止境
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2014-3-7
在线时间
0 小时
发表于 2014-3-7 20:46:34 | 显示全部楼层
菜鸟表示关注。
回复 支持 反对

使用道具 举报

3

主题

10

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2015-1-30
在线时间
0 小时
发表于 2015-1-30 16:54:53 | 显示全部楼层
同求! 同求!
回复 支持 反对

使用道具 举报

3

主题

10

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2015-1-30
在线时间
0 小时
发表于 2015-1-30 16:55:14 | 显示全部楼层
同求! 同求!
回复 支持 反对

使用道具 举报

3

主题

10

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2015-1-30
在线时间
0 小时
发表于 2015-1-30 16:56:11 | 显示全部楼层
同求! 同求!@正点原子
回复 支持 反对

使用道具 举报

28

主题

303

帖子

0

精华

高级会员

Rank: 4

积分
541
金钱
541
注册时间
2014-8-14
在线时间
67 小时
发表于 2015-4-5 21:36:05 | 显示全部楼层
刚开始有一样的   问题  哈哈啊哈
这个世界上还有很多很多的人,但你不认识他们,他们也不属于你的世界。这个世界上还有很多好吃的好玩的好看的东西,可真正属于你的世界其实是很小的,只是你去过的地方吃过的东西和见过的落日,还有会在乎你死活的朋友。”——《龙族》
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2015-7-15
在线时间
0 小时
发表于 2015-8-9 12:01:54 | 显示全部楼层
你可以把这个超时时间理解为窗口看门狗的喂狗允许时间段   只有在这个时间段喂狗才会阻止复位   因为窗口下限是固定的 0x3f   所以只能改变上窗口才能改变这个时间段的长短  而上窗口时间段必须大于0x3f    也就是说窗口看门狗的计数器低六位【5:0】就是上下窗口的差值  这个差值决定看门狗喂狗允许时间段的长短    Twwdg=(4096×2^WDGTB×(T[5:0]+1)) /Fpclk1;  所以这里用到的是【5:0】而不是【6:0】
至于4096就不知道了  知道4096×2^WDGTB这一块就是分频用的就OK了
回复 支持 反对

使用道具 举报

12

主题

132

帖子

1

精华

高级会员

Rank: 4

积分
798
金钱
798
注册时间
2015-8-3
在线时间
184 小时
发表于 2016-3-22 09:59:41 | 显示全部楼层
feiting94 发表于 2015-2-2 14:13
回复【3楼】jermy_z:
---------------------------------
回复【8楼】ZCD:
------------------------------ ...

应该是正解!
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2016-2-27
在线时间
6 小时
发表于 2016-4-5 13:35:47 | 显示全部楼层
4096怎么来的疑问
回复 支持 反对

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2014-1-25
在线时间
10 小时
发表于 2016-11-26 21:39:27 | 显示全部楼层

是4*1024,如果你能看懂独立看门狗的公式,就不难理解了,因为独立看门狗的时钟是KHZ,所以出来是ms,而窗口看门狗的时钟是MHZ,相当于,KKHZ(us),为了转化成ms,所以就必须乘以k,  但是K是1024,不是1000
回复 支持 反对

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2014-1-25
在线时间
10 小时
发表于 2016-11-26 21:40:21 | 显示全部楼层
jermy_z 发表于 2014-3-4 13:52
回复【楼主位】灰太狼:

                                                                                   &n ...

不求甚解!
回复 支持 反对

使用道具 举报

5

主题

19

帖子

0

精华

高级会员

Rank: 4

积分
741
金钱
741
注册时间
2016-9-26
在线时间
92 小时
发表于 2017-3-1 16:52:59 | 显示全部楼层
如果T[5:0]放入的是二进制的数值(000010)B,那么(000000)B到(000010)B之间的间隔就是T[5:0]+1的值
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-18 02:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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