STM32CubeMX系列(4)--定时器实现PWM控制LED

1.概念

PWM:Pulse-width modulation,即脉宽调制。
简单的来说就是控制一个信号周期内高/低电平持续的时间。
脉宽:脉冲是指短时间内出现电压或电流的突然变化,脉宽就是脉冲宽度也就是脉冲持续时间,也就是高/低电平持续时间)。
占空比:指的就是一个信号周期内,高电平所占时间的比例(严谨的说法应该是有效电平占比);
脉冲:
定时器通过计数器与输出比较值进行比较,实现高低电平的切换,下面借用正点原子的图片:
在这里插入图片描述以PWM模式2为例
当CNT<CCRx的时候,IO输出低电平(逻辑0),反之输出高电平(逻辑1),到达ARR即完成一个信号周期。因此通过修改CCRx的值就可以实现修改PWM占空比的目的,修改ARR就可以改变PWM的频率,也就是信号周期变大/小。

2、创建工程
找到可以与定时器通道复用的LED,我的在TIM1,进行如下配置:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过在main函数的while中循环修改CCRx寄存器的值(输出比较值)来修改占空比,实现呼吸灯的效果

注:
在这里插入图片描述
这里的有/无效电平要配合另一个参数设置进行看:
在这里插入图片描述
这里我的LED低电平的时候是亮的,因此低电平有效,所以当使用PWM1模式的时候,当CCR的值很小时,有效电平的占空比就会很小,灯的亮度就小。反之亦然

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值