×
单片机 > 单片机程序设计 > 详情

STM32时钟分频因子

发布时间:2020-06-05 发布时间:
|

无关的话:

关于TIM的时钟分频因子Clock division 是什么,他的作用是什么。

网上找了很多解释,说的人更加一头雾水!

于是自己研究,先看其定义

时钟分频因子的定义:

官方参考手册P377页  TIM1和TIM8的时钟控制寄存器(TIMX_CR1)的第9:8位

是这样定义的

This bit-field indicates the division ratio between the timer clock (CK_INT) frequency and the dead-time and sampling clock (tDTS)used by the dead-time generators and the digital filters

(ETR, TIx),

00: tDTS=tCK_INT

01: tDTS=2*tCK_INT

10: tDTS=4*tCK_INT

11: Reserved, do not program this value

翻译过来就是:

这两个位指示(设定)了分割比率(分频率)在:定时器时钟频率,死区,用于死区发生器的采样时钟,数字滤波器之间。

 定义的理解:    

*简单的说就是分频因子是通过对CK_INT的分割来确定tDTS的!

*分频因子只是分频的手段,它的目的就是得到tDTS!

*而tDTS主要用于,死区  用于死区发生器的采样时钟 和数字滤波器,也就是它要作用于这三个东西上。

*我们再来看它的结果(就是设定了这两位引发的结果),只有一个就是给出了tDTS的值。好多人不理解就出在这个问题上,tDTS是什么呢,它其实就是一个时间值,这个值会用于下面说的三个地方。但实际上除了用到tDTS以外,还用到的是一个频率值fDTS。手册上也没有一个地方说明这点。当我们得到tDTS的值就等于知道fDTS,明白了这点就好理解了。

接下来我们在参考手册中搜索哪里用到了fDTS  和 tDTS。

第一个用到的地方是在P341

TIMx_SMCR从模式控制寄存器的11:8位(8~11位) 来设定外部触发滤波器采样频率

第二个用到的地方是在P350

TIMx_CCMR1捕获比较模式寄存器的7:4位(4~7位) 来设定输入捕获滤波器采样频率

第三个用到的地方是在P358

TIMx_BDTR刹车死区寄存器的7:0     来定义插入互补输出之间的死区持续时间

总结:

分频因子就是在定时器时钟进入定时器后设定一个分频因子,从而得到一个频率fDTS和时间值tDTS,这个频率和时间值主要用于上面说的三个地方。(并不是所有内部都用到,换句话说就是即使你设置了分频因子也可能用不到)





『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
C51 特殊功能寄存器SFR的名称和地址