6.3 PWM输出比较

江科大stm32 P6.3 PWM输出比较

一、PWM简介

  • PWM(pulse width modulation) 脉冲宽度调制

  • 具有惯性的系统,如电机、LED等关闭电源是不会立马停止或熄灭,而是等一会才停止或熄灭

    • 这样可以通过不断点亮熄灭LED,频率足够快时,就可以实现“中等亮度”,调节点亮和熄灭的时间比例就可以让LED呈现不同的亮度级别。电机同理。

  • PWM参数:

    • T_{s}周期, T_{ON} 高电平时间

    • 频率 = 1/T_{s}, 占空比 = T_{ON}/T_{s},分辨率 = 占空比变化步距

    • PWM频率越快,它等效的模拟信号就越平稳,同时性能开销越大,一般PWM频率在几K到几十KHz

    • 占空比越大等效的模拟电压越趋近于高电平,反之趋近于低电平

      • 这个等效关系一般是线性的,如高电平5v,低电平0v,%20占空比就等效1v

    • 分辨率是占空比变化的精细程度。占空比以%1,%2,%3这样的步距跳变,分辨率就是%1。

二、输出比较通道

TIM_OCPolarity控制输出比较极性(CC1P) High(0)是不反转,ref波形直接输出。Low(1)低级性,ref电平取反,有效电平为低电平 。

三、输出比较模式

  • 有效电平和无效电平一般是高级定时器的说法,这里为了理解方便可以理解为高电平和低电平  

常用PWM模式1 

四、PWM参数计算

红线是CCR, 黄线是AAR 蓝线是CNT

  • PWM频率等于计数器更新频率

  • CCR的取值范围取决于ARR的值

  • 分辨率越细越好

五、初始化步骤

第一步:RCC开启时钟,打开TIM外设和GPIO外设的时钟

第二步:配置时基单元,包括时基单元和时基单元前的时钟源选择

第三步:配置输出比较单元(结构体配置TIM_OCInitStructure),里面包括CCR的值(Pulse)、输出比较模式(OCMode)、极性选择(OCPolarity)、输出使能(OutPutState) TIM_OCxInit

  • setCompare1单独更改通道1的CCR的值

第四步:配置GPIO口,初始化为复用推挽输出的配置

第五步:运行控制,启动计数器,就能输出PWM波

六、PWM波和GPIO的对应关系

TM2的通道1和ETR都是复用在了PA0的引脚

使用CH1只能接PA0引脚

但是也有重映的机会

比如既要用USART2的TX又要用TM2的CH3会产生引脚冲突,就可以在重映射表中找到CH3的重定义

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值