首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >定时器如何生成PWM信号

定时器如何生成PWM信号

作者头像
云深无际
发布2025-02-05 14:55:58
发布2025-02-05 14:55:58
3990
举报
文章被收录于专栏:云深之无迹云深之无迹

PWM(脉冲宽度调制)信号的本质是一个占空比可调的矩形波,它通常由定时器(Timer) 通过计数和比较匹配的方式生成。

简单来讲就是,控制IO的高电平时间。

  1. 如果 Ton = 50% × T,那么占空比为 50%。
  2. 如果 Ton = 25% × T,那么占空比为 25%,输出功率减小。

详细的说说:

定时器内部有一个计数器(Counter),它根据一个固定的时钟源(Clock)递增或递减。

当计数器达到设定的周期值(ARR,自动重装寄存器)时,计数器会复位,并重新开始计数。

  1. 时钟输入:定时器从系统时钟(如 72MHz)获取输入时钟。
  2. 计数器:定时器会按照设定的分频值递增,直至达到 ARR 值。
  3. 比较寄存器(CCR):设定 PWM 输出翻转的时间点。

PWM 模式到底是怎么搞的?

CCR的寄存器在这里,这个值越大,高电平的持续时间越短

定时器有一个比较寄存器(CCR),用来设定高电平持续时间(Ton):

  1. 计数器从 0 计数到 ARR(自动重装值)。
  2. 当计数值小于 CCR 时,输出为高电平。
  3. 当计数值大于 CCR 时,输出变为低电平。

定时器启动,开始计数。

计数器(CNT)从 0 递增到 ARR,然后复位,形成周期性循环。

比较寄存器(CCR)设定高电平时间:

  1. CNT < CCR → 输出高电平。
  2. CNT ≥ CCR → 输出低电平。 形成 PWM 波形。所以就改变CCR就改变了占空比。

非常的简单

这就是PWM蕴含的公式

这个是具体计算和配置的时候考虑的问题

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-01-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云深之无迹 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档