当前位置: 首页 > article >正文

【STM32】TIM输入捕获-学习笔记

1、输入捕获简介

  •  IC(Input Capture)输入捕获
  • 输入捕获模式下,当通道输入引脚出现指定电平跳变时(高低电平变化),当前CNT的值将被锁存到CCR中,可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数
  • 每个高级定时器和通用定时器都拥有4个输入捕获通道 可配置为PWMI模式,同时测量频率和占空比
  • 可配合主从触发模式,实现硬件全自动测量

输入捕获和输出比较的4通道: 

 

4个输入捕获和输出比较通道共用4个CCR寄存器,它们的CH1~CH4四个通道引脚也是共用的。所以对于同一个定时器,输入捕获和输出比较只能使用其中一个,不能同时使用。

2、频率测量 

频率的基本定义:1秒内出现多少个重复周期,那频率就是多少赫兹。所以下面测频法中,我们在1s闸门时间内,对上升沿进行计次,计次多少,频率值就是多少Hz,这个乜问题。按频率定义进行测量的方法叫测频法。这里闸门时间也不是一定为1s,如果闸门时间是2秒,就是计次值除2,就是频率。如果闸门时间是0.5秒,那就是计次值×2,就是频率。

测周法基本原理: 周期的倒数就是频率。

测周法和测频法都是用来测量信号频率的方法,它们的区别主要在于测量原理和应用场景上:

  1. 测周法(周期计数法):测周法是通过计算信号周期的方式来确定频率值。具体来说,测周法先测量信号一个完整周期的时间,然后通过周期的倒数来计算频率。这种方法适用于稳定的周期性信号,例如正弦波信号或方波信号。

  2. 测频法(相位比较法):测频法是通过比较待测信号与已知频率基准信号(或参考信号)的相位差来确定频率值。通过测量相位差的变化,可以计算出待测信号的频率。这种方法适用于需要高精度频率测量的场合,例如无线通信系统或科学实验中。

总的来说,测周法适用于周期性稳定的信号,测频法适用于需要高精度的频率测量。测频法测量结果更新慢一些,数据相对稳定;测周法测量更新快,数据更新也快。高频适合使用测频法,低频适合使用测周法。选择哪种方法取决于信号的特性和测量的要求。

 中介频率:测频法计次和测周法计次,计次N尽量要大一些,N越大,相对误差越小。因为在上面两个方法中,计次可能会存在正负1误差:具体解释

 当待测频率小于中介频率时,测周法误差更小,选择测周法。 当待测频率大于中介频率时,测频法误差更小,选择测频法更合适。

本节输入捕获测频率,使用的是测周法。那如何实现测周法测频率? 先了解框图

 3、定时器框图

 

比如这里我们可以配置上升沿触发捕获,每来一个上升沿,CNT转运到CCR一次,又因为这个CNT是内部标准时钟驱动的,所以CNT的数值就可以用来记录两个上升沿之间的时间间隔,这个时间间隔就是周期,再取个倒数,就是测周法的频率了。细节:每次捕获之后,都要把CNT清零一下,这样下次上升沿再捕获的时候,取出的CNT才是两个上升沿的时间间隔。

 滤波和边沿检测电路

这里设计了两套滤波和边沿检测电路, 第一套电路经过滤波和极性选择,得到TI1FP1,输入给通道1的后续电路。 第二套电路经过另一个滤波和极性选择,得到TI1FP2,输入给下面通道2的后续电路。 

同理,下面TI2信号进来,也经过两套滤波和边沿检测电路, 第一套电路经过滤波和极性选择,得到TI2FP1,输入给上面通道1的后续电路。 第二套电路经过另一个滤波和极性选择,得到TI2FP2,输入给通道2的后续电路。 

在这里两个信号进来,可以选择各走各的,也可以选择交叉。 进行交叉连接的原因:①可灵活切换捕获电路的输入,比如你一会想要用CH1作为输入,一会想用CH2作为输入,这样就可以通过数据选择器灵活的进行选择。②可以把一个引脚的输入,同时映射到两个通道捕获单元,这也是PWMI的经典结构,比如这里第一个通道使用上升沿触发,捕获周期,第二个通道使用下降沿触发,捕获占空比,两个通道同时对一个引脚进行捕获,就可以同时测量频率和占空比。这就是PWMI模式。一个通道灵活切换两个引脚和两个通道同时捕获一个引脚。这就是这里交叉一下的作用和目的。 

 电路执行细节:

输入捕获通道  

CCMR1的ICF位可以控制滤波器的参数,滤波器是如何工作呢?看数据手册 

上图简单理解为,这个滤波器的工作原理就是以采样频率对输入信号进行采样,当连续N个值都为高电平,输出才为高电平;连续N个值为低电平,输出才为低电平。如果信号出现高频抖动,导致连续采样N个值不都完全一样,那输出就不会变化,这样就可以达到滤波效果。采样频率越低,采样个数N越大,滤波效果就越好。如果波形噪声比较大,那就可以把采样频率参数设置大一点,这样就可以过滤噪声了。

 主从触发模式

之前我说过,每次捕获之后,都要把CNT清零一下,这样下次上升沿再捕获的时候,取出的CNT才是两个上升沿的时间间隔。在这里硬件电路就可以在捕获之后自动完成CNT的清零工作,如何完成自动清零工作呢?这就用到主从触发模式了。

比如这里 TI1FP1的上升沿触发捕获通道IC1这一路,同时还可以触发从模式,在这个从模式里面,就有电路可以自动完成CNT的清零,所以可以看出,这个从模式就是可以完成自动化的利器。

 主从触发模式细节:

  •  主模式:将定时器内部信号,映射到TRGO引脚,用于触发别的外设。
  •  从模式:接受其他外设或者自身外设的一些信号,用于控制自身定时器的运行,也就是被别的信号控制。
  • 触发源选择:选择从模式的触发信号源,是从模式的一部分,触发源选择,选择指定的一个信号, 得到TRGI,TRGI去触发从模式,从模式就会在它的列表里选择一项操作来自动执行。

下图红连就是上面说的让TI1FP1信号自动触发从模式,从模式让CNT自动清零。 先捕获后清零

有关信号的一下解释: 

 各种主模式的解释: 

比如想实现定时器的级联,你可以选择一个定时器主模式输出更新信号到TRGO,另一个定时器选择上一个的定时器触发从模式,从模式选择执行外部时钟模式1的操作,这就可以实现定时器级联了。

 从模式触发源可选信号:

  触发从模式后执行的操作: 

 输入捕获基本结构

 框图解释:31:40

 

注意:这里的CNT的值是有上限的,ARR的值一般设置为65535,那CNT最大也只能计数65535。如果信号频率太低,CNT计数值可能会溢出

PWMI基本结构 

PWMI模式使用了两个通道同时捕获一个引脚,可以同时测量频率和占空比。

 以上就是使用了两个通道同时测量频率和占空比。

PWMI模式例子:  


http://www.kler.cn/a/571958.html

相关文章:

  • 2025年能源工作指导意见
  • 【Unity】鼠标在某区域悬停触发文本框,移开关闭文本框
  • 蔡司智锐系列眼镜:智能动态护眼,畅享数字化生活
  • doris: Hive
  • 通俗的方式解释“零钱兑换”问题
  • mysql空间占用
  • Git基本命令索引
  • 【音视频】音频基础
  • SQLite Alter 命令详解
  • android13打基础:控件datepicker
  • 【每日学点HarmonyOS Next知识】手写电子签名、瀑布流布局获取字符串高度、WaterFlow崩溃、Web滑动问题
  • 记一次误禁用USB导致键盘鼠标失灵的修复过程
  • BambuStudio学习笔记:Geometry类
  • Linux系列:如何用 C#调用 C方法造成内存泄露
  • 计算机毕业设计SpringBoot+Vue.js网上服装商城(源码+文档+PPT+讲解)
  • 科技快讯 | 启明星辰发布“大模型访问脱敏罩”;清华大学将扩招本科生,重点培养 AI 人才;“中国首个 AI IDE”字节跳动 Trae 国内版发布
  • 文件上传靶场(1--9关)
  • Qt 的绘图中的顺序
  • 职坐标AIGC课程实战项目深度解析
  • 【论文笔记】3DGS压缩相关工作2篇