OpenEdv-开源电子网

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

独立看门狗溢出时间计算

[复制链接]

16

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
207
金钱
207
注册时间
2014-7-22
在线时间
0 小时
发表于 2014-7-27 21:18:00 | 显示全部楼层 |阅读模式
5金钱
(库函数版本例程)原子STM32战舰开发板上,为什么独立看门狗的溢出时间是

Tout=((4*2^prer)*rlr)/40; //单位为毫秒

Tout为看门狗溢出时间(单位为ms);prer为看门狗时钟预分频值(IWDG_PR),范围为0~7rlr为看门狗的重装载值(IWDG_RLR的值);
而不是Tout=prer*rlr/40;    //单位为毫秒
低速内部时钟取40KHZ
fficeffice" />

最佳答案

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

这是你理解错了,预分频不是0 ~ 7,寄存器里是0 ~ 7,实际上写0代表4分频,写7代表256分频
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
100
金钱
100
注册时间
2014-5-20
在线时间
2 小时
发表于 2014-7-27 21:18:01 | 显示全部楼层
这是你理解错了,预分频不是0 ~ 7,寄存器里是0 ~ 7,实际上写0代表4分频,写7代表256分频
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-7-27 23:31:42 | 显示全部楼层
你觉得应该是多少?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

16

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
207
金钱
207
注册时间
2014-7-22
在线时间
0 小时
 楼主| 发表于 2014-7-28 11:28:00 | 显示全部楼层
不应该是Tout=prer*rlr/40吗?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-7-29 00:39:48 | 显示全部楼层
回复【3楼】潘浩锐:
---------------------------------
为什么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-7-29 00:40:25 | 显示全部楼层
prer是代表什么意思?
可以直接和rlr相乘?
你确定?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

16

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
207
金钱
207
注册时间
2014-7-22
在线时间
0 小时
 楼主| 发表于 2014-7-29 10:48:49 | 显示全部楼层
分频系数的话不是直接相乘的吗?
回复

使用道具 举报

16

主题

123

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
207
金钱
207
注册时间
2014-7-22
在线时间
0 小时
 楼主| 发表于 2014-7-29 18:52:28 | 显示全部楼层
原来是这样,领悟了,谢谢
回复

使用道具 举报

6

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
95
金钱
95
注册时间
2013-1-15
在线时间
7 小时
发表于 2015-3-18 11:49:10 | 显示全部楼层
想问下原子哥,这个时钟的误差范围大概有多大!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2015-3-18 22:50:19 | 显示全部楼层
回复【9楼】liqingmcu:
---------------------------------
这个看st的数据手册.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

1

主题

19

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
228
金钱
228
注册时间
2015-9-17
在线时间
37 小时
发表于 2015-10-8 10:58:30 | 显示全部楼层
回复【7楼】小达人:
---------------------------------
是不是可以这样理解:prer为看门狗时钟预分频值(IWDG_PR)写4,实际是64分频(中文参考手册317页表83),40khz的时钟频率64分频后是:40K/64Hz,所以现在一个时钟周期为:(64/40K)s,而rlr为看门狗的重装载值(IWDG_RLR的值)为625,需要计时器从625开始递减,递减625个周期刚好是:625*64/40K=1s。所以相当于看门狗溢出时间为1秒。
很高兴同大家交流学习STM32的专业知识!
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2016-7-28
在线时间
13 小时
发表于 2016-8-17 00:41:15 | 显示全部楼层
可靠的蓄势 发表于 2015-10-8 10:58
回复【7楼】小达人:
---------------------------------
是不是可以这样理解:prer为看门狗时钟预分频 ...

原来如此,学习了
回复

使用道具 举报

26

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
142
金钱
142
注册时间
2017-3-5
在线时间
21 小时
发表于 2017-4-19 22:05:40 | 显示全部楼层
7楼正解
回复

使用道具 举报

26

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
142
金钱
142
注册时间
2017-3-5
在线时间
21 小时
发表于 2017-4-19 22:13:15 | 显示全部楼层
本帖最后由 wang521000 于 2017-4-19 22:16 编辑

我说说我的理解

因为要溢出时间1s  所以你参考中文参考手册317页表83  可以得出 16分频到256分频都是可以超过1s的溢出时间的  这里我们以32分频为例
因为32分频最短时间为0.8ms(这里的最短时间就是在当前分频下 计一个数所用的时间) 你要溢出1s 所以要计1000/0.8 = 1250个数 所以RLR得设置为1250
是不是这样
回复

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2021-8-8
在线时间
7 小时
发表于 2021-8-14 15:20:00 | 显示全部楼层
正点原子 发表于 2014-7-27 23:31
你觉得应该是多少?

不要这么回复问题,我看的很懵……
回复

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2021-8-8
在线时间
7 小时
发表于 2021-8-14 15:48:26 | 显示全部楼层
独立看门狗溢出时间计算:
Tout =(IWDG_RLR寄存器对应的装载数值)*(看门狗时钟的周期)
=rlr*1/freq                                                         //freq则等于 8位预分频器的值乘以递减计数器所用到的时钟频率
=rlr*预分频因子/40
=rlr*2^(prer+2)/40



Freq =8位预分频器的值*递减计数器所用到的时钟频率
=预分频系数(即8位预分频器的值)*40       
//独立看门狗(IWDG)由专用的低速时钟(即LSI)驱动,LSI的频率f为40khz
=40/预分频因子                                                //预分频系数与预分频因子互为倒数
//预分频因子=4*2^prer=2^(prer+2)
//prer为看门狗时钟预分频值(IWDG_PR)
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-26 10:58

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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