STM32定时器PWM输出

STM32定时器PWM(脉冲宽度调制)输出原理,在使用固件库时,主要涉及定时器的配置以及PWM信号的生成。以下是对该原理的详细解释:

一、PWM基本概念

PWM(Pulse Width Modulation)是一种通过改变脉冲宽度来控制模拟信号平均值的技术。在STM32中,PWM信号由定时器生成,其频率和占空比分别由定时器的自动重装载寄存器(ARR)和比较寄存器(CCR)决定。

所谓脉宽调制信号(PWM波),就是一个TIMx_ARR自动重装载寄存器确定频率(由它决定PWM周期),TIM_CCRx寄存器确定占空比信号。

以TIM3为例,STM32的通用定时器氛围TIM2,TIM3,TIM4,TIM5,每个定时器都有独立的四个通道可以用来作为: 输入捕获,输出比较,PWM输出,单脉冲模式输出等。

STM32的定时器除了TIM6和TIM7(基本定时器)之外,其他的定时器都可以产生PWM波输出,高级定时器TIM1,TIM8可以同时产生7路PWM输出,而通用定时器可以同时产生4路PWM输出,这样STM32可以最多同时输出30路PWM输出!

以向上计数为例,讲述PWM原理:

①在PWM输出模式下除了CNT(计数器当前值),ARR(自动重装载值),CCRx(捕获/比较寄存器值)。

②当CNT小于CCRx时,TIMx_CHx通道输出低电平

③当CNT等于或大于CCRx时,TIMx_CHx通道输出高电平

CCR1:设置捕获比较寄存器,设置比较值。      

CCMR1寄存区:设置PWM模式1 或者PWM模式2。

CCER:  P位:输出/捕获   :设置极性: 0 高电平有效,1 低电平有效

             E位:输出/捕获   : 使能端口

二、PWM的模式

模式一:边沿对齐模式

向上计数时: 当TIMx_CNT<TIMx_CCRx时通道1为有效电平,否则为无效电平;

向下计数时:   一旦TIMx_CNT>TIMx_CCRx,CCR1通道1为无效电平,否则为有效电平。

模式二:中央对齐模式

向上计数时: 当TIMx_CNT<TIMx_CCRx时通道1为无效电平,否则为无效电平;

向下计数时:   一旦TIMx_CNT>TIMx_CCRx,CCR1通道1为有效电平,否则为无效电平。

自动加载的预加载寄存器

简单的说:

APER =1 ,ARR立即生效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值