版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/louyangyang91/article/details/78930311
一.设置TIMx_CR1的CKD[1:0]位,设置时钟分频因子得到fDTS。如下图:
二设置TIMx_CCMR1寄存器的IC1F[3: 0]位。滤波采样频率和采样次数。如下图
举例:定时器输入时钟频率fCK_INT=72M。CKD[1:0]=10(B)。IC1F[3:0]=1111(B)。定时器设置为1通道捕获
fDTS=fCK_IN/4=72M/4=18M
采样频率fSAMPLING = fDTS/32=18M/32=0.5625M
所以滤波的长度=1/fSAMPLING *N=1/0.5625M*8=14.2US。这样捕获通道的滤波器就会滤掉低于14.2us的脉冲干扰
也就是说滤波器会以fSAMPLING的频率采样8次,如果8次都为高电平则确定为上升沿触发。
ps;刚开始我在考虑这个定时器输入时钟频率fCK_INT是72M还是经过PSC分频后的频率。手册里描述PSC分频的频率为fCK_CNT是用于定时器计数器的,所以fCK_IN=72M。这一点要注意。