首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

STM32定时器的输入滤波器机制

STM32定时器的输入滤波器机制

STM32的定时器输入通道都有一个滤波单元,分别位于每个输入通路上(下图中的黄色框)和外部触发输入通路上(下图中的兰色框),它们的作用是滤除输入信号上的高频干扰。

具体操作原理如下:
在TIMx_CR1中的CKD[1:0]可以由用户设置对输入信号的采样频率基准,有三种选择:
1)采样频率基准fDTS=定时器输入频率fCK_INT
2)采样频率基准fDTS=定时器输入频率fCK_INT/2
3)采样频率基准fDTS=定时器输入频率fCK_INT/4

然后使用上述频率作为基准对输入信号进行采样,当连续采样到N次个有效电平时,认为一次有效的输入电平。
实际的采样频率和采样次数可以由用户程序根据需要选择;外部触发输入通道的滤波参数在从模式控制寄存器(TIMx_SMCR)的ETF[3:0]中设置;每个输入通道的滤波参数在捕获/比较模式寄存器1(TIMx_CCMR1)或捕获/比较模式寄存器2(TIMx_CCMR2)的IC1F[3:0]、IC2F[3:0]、IC3F[3:0]和IC4F[3:0]中设置。


例如:当fCK_INT=72MHz时,选择fDTS=fCK_INT/2=36MHz,采样频率fSAMPLING=fDTS/2=18MHz且N=6,则频率高于3MHz的信号将被这个滤波器滤除,有效地屏蔽了高于3MHz的干扰。
上面的内容是复制的一位前辈的博客,网址是:http://bbs.ednchina.com/BLOG_ARTICLE_263170_2.HTM
对于博客的最后面写的滤波器有效的屏蔽了高于3MHz的干扰:滤波器对输入信号进行采样,当连续采样到N个有效电平时,认为一次有效的输入电平。这里采样频率是18MHz,那么两次采样之间的时间间隔是1/18MHz。那么如果要连续采样到6个有效电平需要的时间是1/3MHz,所以对于脉冲宽度小于1/3MHz的信号来说是永远不可能连续采样到6个有效电平的,所以对于大于3MHz的信号来说,其脉冲宽度小于1/3MHz,因此被滤掉。
继承事业,薪火相传
返回列表