定时器2.0(PWM与输入捕获)

1.PWM输出

1.1概述

基本特性:脉冲宽度调制(PWM)是一种对模拟信号电平进行数字编码的方法。

广泛应用于电机控制、灯光的亮度调节、功率控制等领域。(脉宽调制的实质是修改高电平的持续时间)

关键参数

(1)周期(Period):一个完整PWM波形所持续的时间

(2)占空比(Duty):高电平持续时间(Ton)与周期时间(Period)的比值

1.2 PWM信号的电压调节原理

原理:电压调节的原理不同占空比的PWM信号等效于不同的平均电压

平均电压 =峰值 x占空比

示例(峰值为 3.3V 时):

50% 占空比→平均电压 1.65V;

20% 占空比→平均电压 0.66V;

80% 占空比→平均电压 2.64V。

1.3功能单元作用

(1)输入捕获单元:用于捕获外部触发信号,捕获方式为上升沿/下降沿/双边沿捕获。发生捕获事件时,将此刻计数器的值锁存到捕获/比较寄存器中,供用户读取,同时可以产生捕获中断。

(2)捕获/比较寄存器:TIMx_CCR寄存器在输入捕获模式下用于存放发生捕获事件时的当前计数值;在输出比较模式下用于存放预设的比较值。该寄存器具备预装载功能。

(3)输出比较单元:用于信号输出。定时器通过将预设的比较值与计数器的值做匹配比较,以实现各类输出,如PWM输出、单脉冲输出等。预设的比较值存放在捕获/比较寄存器中。

1.4 PWM输出的工作原理

核心寄存器:

自动重载寄存器(ARR):控制 PWM 信号周期。

捕获 / 比较寄存器(CCR):控制 PWM 信号占空比。

计数器寄存器(CNT):实时计数值,用于与 CCR 比较。

Eg:假设预分频时钟CK PSC为100MHz,产生周期为1ms,占空比为47.5%的PWM信号

由于psc为100MHz,要变成周期为1ms,首先将PSC设置为99,ARR设置为999

接下来占空比为47.5%,按照占空比公式以及设定的ARR值得到CRR的值为475.

1.5 多通道输出

同一定时器的多个通道共享 ARR,因此可输出周期相同、占空比不同的 PWM 信号。例如:通道 1 周期 1ms、占空比 47.5%(高电平 475us);通道 2 周期 1ms、占空比 70%(高电平 700us)

1.6 PWM功能的数据类型

(1)输出比较单元初始化类型

(2)输出比较模式OCMode的取值范围:

匹配的含义TIM_CNT(当前计数值)等于TIMX_CCR(捕获/比较值)

(3)有效电平极性OCPolarity的取值范围

(4)快速输出使能OCFastMode的取值范围(可以加快触发输入事件对通道输出的影响,默认配置为不使能)

1.7 PWM功能的接口函数

(1)定时器PWM输出启动函数:HAL_TIM _PWM_ Start

(2)定时器比较/捕获寄存器设置函数:HAL _TIM _SET_ COMPARE

2.定时器输入捕获功能

2.1用途与原理

用途:用于测量信号的参数,比如周期和频率。

工作原理:在输入捕获模式下,当捕获单元捕捉到外部信号的有效边沿(上升沿/下降沿/双边沿)时,将计数器的当前值锁存到捕获/比较寄存器TIMX_CCR供用户读取。(由于输入捕获与PWM输出都是TIMX_CCR寄存器,所以两个功能二选一)

2.2捕获过程

捕获过程示意图

假设上升沿捕获,递增计数模式.第一次捕获在中断回调函数中保存Tb时刻的捕获值;第二次捕获在中断回调函数中保存Td时刻的捕获值;将两次捕获值相减,再乘以计数时间可计算出信号周期。

计算方法:

(1)一切正常

(2)当待测信号不大于定时器的一个完整计数周期(从0到ARR)时

假设两次连续的捕获值分别为CCRx1和CCRx2,则捕获差值可以按照如下方法计算:

注:如果待测信号大于定时器的一个完整计数周期,注意:则需要结合定时器的更新中断次数来计算捕获差值

2.3 输入捕获功能的数据类型

(1)输入捕获单元初始化类型

(2)捕获边沿 ICPolarity的取值范围

(3)捕获通道 ICSelection的取值范围

(4)预分频系数 ICPrescaler的取值范围

2.4 输入捕获功能的接口函数

 (1)输入捕获启动函数:HAL_TIM_IC_ Start_IT

(2)输入捕获停止函数:HAL_TIM_IC_ Stop_IT

(3)输入捕获中断回调函数HAL _TIM_IC _CaptureCalback

(4)捕获值读取函数:HAL_TIM_ ReadCapturedValue

(5)捕获边沿设置函数: HAL _TIM_ SET _CAPTUREPOLARITY

3.总结

主要围绕 PWM 输出和定时器输入捕获功能展开。PWM 输出部分,介绍了其作为模拟信号数字编码方法的特性,核心参数为周期和占空比,通过平均电压 = 峰值 × 占空比 实现电压调节,涉及输入捕获单元、捕获 / 比较寄存器等功能单元,核心寄存器 ARR、CCR 分别控制周期和占空比,还包括多通道输出特性、相关数据类型及接口函数。定时器输入捕获功能用于测量信号周期和频率,通过捕获外部信号边沿锁存计数器值计算参数,介绍了捕获过程、数据类型及接口函数,两者共用部分寄存器,功能二选一。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值