定时器--精讲二 输入捕获

前言

前面有关定时器的介绍,大家可以回顾一下,如果有问题还请提出。本期主要围绕输入捕获进行讲解,从更深层次的角度了解定时器的相关作用。

1.定时器通道

2.1通道位置

从图中我们可以看到,通道占了定时器的一大片区域,一般定时器有4个通道。一般我们看图片可能会以为,输入4个通道,输出也是4个通道,其实不是这样的,这里我们记住:一个通道只占用1个引脚。 值得注意的一点是,不管通道是输入捕获,还是输出比较,都会操作一个叫做CCR(1~4)的寄存器,

通道一般用于捕获电平上升沿信号和电平下降沿信号,假设TIM的通道1设置捕获到上升沿,这个时候,计数器的值会被写入CCR1中,并触发一个中断。

2.捕获原理以及流程

1.输入滤波:通道输入的波形进行滤波,以去除毛刺,让信号较为稳定。 

2.边沿检测: 一个通道可以检测上升沿和下降沿。

3.信号选择:也就是指定这个通道是检测上升沿还是下降沿。

4.分频:也就是对捕获的上升沿或者下降沿进行分频处理,比如2分频:两个上升沿算做一个上升沿。

5.使能通道

6.触发中断

7.计数器将当前的计数值保存在CCR寄存器中。

2.1步骤拆解:

2.1.1输入滤波:毛刺滤除

仔细看例子,对于1us的毛刺滤除,需要选小于1us的采样次数。这里选择 时钟输入2分频,滤波器参数为0x08,也就是72/2/8 = 4.5MHZ,采样次数为6次。1/4.5MHZ*6 ~=1.3us 也就是大于1.3us就可滤波。这样的话,完全可以去除毛刺。

 2.1.2上升沿 下降沿模式选择

注意,通过下面这张图,我们可以观察到,CCR1的模式选择也可以来自CCR2,也就是说CCR1可以间接的捕获到CCR2的上升沿下降沿,同时也可以来自从模式控住器。 

2.2流程梳理

当输入信号接到CCR1时,假设CCR1选择上升沿,CCR2间接选择下降沿,这个时候两个通道一旦捕获到上升沿和下降沿,就会产生中断,当产生上升沿时,CCR1记录此时的CNT, 当产生下升沿时,CCR2记录此时的CNT.脉宽就是:CCR2-CCR1

2.3中断原理

3.编程流程

第一步:设置通道参数

第二步:通道使能,也就是打开开关

第三步:设置系统时钟的频率

第四步:获取CCR的寄存器值。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值