定时器之输入捕获

输入捕获的作用

工作机制
        输入捕获通过检测外部信号边沿(上升沿/下降沿)触发计数器(CNT)值锁存到捕获寄存器(CCRx),结合两次捕获值的差值计算信号时间参数。

  • 脉冲宽度测量:配置两个通道分别捕获上升沿和下降沿,计算两次捕获值的差值与分辨率的乘积(分辨率=1/定时器时钟频率)。

  • 频率测量:捕获连续两个上升沿的CNT差值,通过(频率=定时器时钟频率/周期差值)计算。

关键硬件模块

  • 滤波器:消除信号毛刺(通过设置ICFilter参数控制采样频率)
  • 预分频器:控制捕获事件触发频率(如每2/4/8个边沿触发一次捕获)
  • 边沿检测器:通过CCER寄存器配置触发极性TIM_ICPOLARITY_RISING/FALLING

结构及其运行原理

基本结构如图

我们拿通道1来讲解他的结构和各结构的功能

输入捕获的硬件由以下关键模块组成:

模块功能描述
输入通道外部信号通过GPIO引脚输入到定时器的某个通道(如TIMx_CH1~CH4)
边沿检测器检测信号的上升沿或下降沿(通过TIMx_CCER寄存器的CCxP位配置极性)
数字滤波器抑制信号抖动(通过TIMx_CCMRxICxF位配置滤波窗口,滤除高频噪声)
预分频器对输入信号进行分频(通过TIMx_CCMRxICxPSC位配置,如每2/4/8个边沿触发一次)
捕获寄存器锁存当前定时器计数器(CNT)的值到TIMx_CCRx寄存器
中断/事件生成触发捕获完成中断或DMA请求,通知CPU处理数据

信号和数据处理

第一阶段:输入滤波

第一阶段是将输入的信号进行滤波处理,信号经过滤波器和预分频器,滤除噪声并降低触发频率

第二阶段:边沿检测

边沿检测器检测到预设的边沿(上升沿或下降沿)时,触发捕获事件。上升沿脉冲或下降沿脉冲。

  • 上升沿脉冲:当信号出现一个上升沿,就发出一个脉冲
  • 下降沿脉冲:当信号出现一个下降沿,就发出一个脉冲

第三阶段:信号选择

信号来源有三种,直接、间接、TRC

  • 直接输入模式(Direct Mode)​:外部信号直接连接到 ​同一通道的捕获寄存器。例如,TIMx_CH1的输入信号直接映射到TIMx_CCR1寄存器。
  • 交叉输入模式(Indirect Mode)​:外部信号 ​跨通道映射到其他通道的捕获寄存器。例如,TIMx_CH1的输入信号映射到TIMx_CCR2寄存器。
  • TRC:信号来源来自从模式控制器

信号的四种走向

第四阶段:分频

在分频阶段如果选择了2分频会出现当每个输出的脉冲累计为2时输出一个脉冲,分频越大响应的脉冲数量等于除分频数的值。分频后每输出一个脉冲就会触发一个ccx的事件,让CCRx寄存器记录触发ccx事件时CNT的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值