0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PWM经典应用:LED亮度控制及呼吸灯实战

青山老竹农 来源:jf_82863998 作者:jf_82863998 2026-01-05 20:50 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

PWM脉冲宽度调制——是利用微处理器的数字输出对模拟电路进行控制的一种非常有效的技术,广泛应用于测量、通信、功率控制与变换等诸多领域。

日常开发中比较典型的应用场景:

电机控制

灯光调光:

音频信号生成:

加热控制:

本文特别分享PWM相关基础知识,并以Air8000核心板为例,演示LuatOS开发中如何使用PWM功能实现LED亮度控制及呼吸灯效果,帮助开发者快速上手。

wKgZPGlbsiSARZ9MABxHYRHvHJc837.png

一、PWM相关基础知识

PWM具有高效、控制精度高及实现简便等优点,但PWM信号可能产生高频噪声,需要滤波以减小干扰。另外,某些应用需要特定的硬件支持,如支持PWM输入的微控制器或电路。

要想使用PWM,还需先了解PWM的相关参数和原理。

1.1 PWM参数

PWM的频率:
是指1秒钟内信号从高电平到低电平再回到高电平的次数(一个周期),也就是说一秒钟PWM有多少个周期。 单位:Hz。

PWM的周期:
T=1/f周期=1/频率

例如:
如果频率为50Hz,T=1/50=0.02s,
也就是说一个周期是20ms;

1s=1000ms,那么一秒钟就有50次PWM周期。

PWM的占空比:
是一个脉冲周期内,高电平的时间占整个周期时间的比例。单位:% (0%-100%)

例如:
一个周期10ms,高电平占8ms,
那么此占空比就是8/10=80%。

1.2 PWM原理

单片机的IO引脚输出的是数字信号,且只能输出1和0,那如果 TTL电平中,高电平为5V,低电平为0V,但是我们想要输出不同的模拟电压,比如输出3.75V应该怎么操作?

此时要用到PWM,通过改变IO口输出方波的占空比,得到不同的模拟电压。

3.75/5=0.75,也就是高电平时间占整个周期的75%,即占空比为75%,可得到模拟电压3.75V。

wKgZPGlbsliAejlfAADFpwvPXGg486.png

注意上图中蓝线,代表着输出的模拟电压,占空比越大,则模拟电压也越大。

二、PWM应用示例

Air8000相关管脚具有复用功能,结合原理图引脚指示可知板载红色LED由PIN24 GPIO21控制。本示例demo中已有配置好的pins_Air8000.json文件,测试demo时一并烧录进Air8000核心板。

wKgZO2lbspmAVoflABboRpxd9tg505.pngwKgZO2lbsrOAGbDWAAbY1llTTiE656.png

2.1 PWM输出示例

本例使用Air8000核心板上的NetLed(网络状态灯),pwm通道id=4,打开pwm4通道的pwm输出,设置不同的占空比,小灯会有不同的亮度。

wKgZO2lbsueADjTCAAuvZFjvSzc076.png

示例效果如下:

wKgZO2lbswyAChS2ACDUDrV4RfQ055.png

2.2 PWM呼吸灯

本例使用Air8000核心板上的NetLed(网络状态灯),pwm通道id=4来查看呼吸灯效果。呼吸灯效果就是小灯由亮到暗逐渐变化,很有节奏感地一起一伏,好像人在呼吸的感觉。

我们可以通过不断调高占空比让小灯一点点亮起,再不断调低占空比让小灯一点点熄灭从而达到此效果。

wKgZO2lbsyuAAGZNAAUJWow1Gys419.png

示例效果如下:

wKgZO2lbs1SAPWceABxoP4AyyyM828.png



审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    244

    文章

    24779

    浏览量

    693393
  • PWM
    PWM
    +关注

    关注

    116

    文章

    5904

    浏览量

    227098
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    XZ6128内置100V/5A功率MOS,升压恒流型LED驱动芯片

    概述 XZ6128是一款高效率、高精度的升压型大功率LED恒流驱动控制芯片。 XZ6128内置高精度误差放大器,固定关断时间控制电路,恒流驱动电路等,特别适合大功率、多个高
    发表于 05-15 09:48

    科芯创展3.1-150V LED恒流驱动控制芯片

    控制亮度 LED 的驱动电流,使 LED 亮度
    发表于 04-20 09:55

    XZ6920高亮度LED恒流驱动控制芯片,特别适合大功率、多个高亮度LED串的应用

    这是一款高亮度LED恒流驱动控制芯片,2.5V-100V的宽输入电压,特别适合大功率、多个高亮度LED
    发表于 03-05 09:57

    探索MAX20090:汽车高压高亮度LED控制器的卓越之选

    探索MAX20090/MAX20090B:汽车高压高亮度LED控制器的卓越之选 在汽车照明领域,高亮度LED(HB
    的头像 发表于 01-30 14:45 371次阅读

    【瑞萨FPB-RA6E2试用】【瑞萨FPB-RA6E2】基于 PWM(脉宽调制)的 LED 呼吸-闪烁效果及设备树理解

    基于 PWM(脉宽调制)的 LED 呼吸-闪烁效果及设备树理解 0、视频教程 https://www.bilibili.com/vide
    发表于 01-13 15:05

    PWM 控制 LED、蜂鸣器、电机:你真的用对了吗?

    在做嵌入式开发的时候,PWM(脉宽调制)几乎是必学技能。LED想要呼吸效果?PWM。蜂鸣器要发“滴滴”的提示音?PWM。电机需要调速?还是
    的头像 发表于 01-04 09:14 996次阅读
    <b class='flag-5'>PWM</b> <b class='flag-5'>控制</b> <b class='flag-5'>LED</b>、蜂鸣器、电机:你真的用对了吗?

    基于PWMLED调光技术与呼吸实现方法!

    利用PWM技术控制LED亮度,不仅效率高、响应快,还能实现细腻的视觉过渡。系统介绍PWM的工作机制,结合具体硬件平台,展示如何编程实现
    的头像 发表于 12-15 13:03 768次阅读
    基于<b class='flag-5'>PWM</b>的<b class='flag-5'>LED</b>调光技术与<b class='flag-5'>呼吸</b><b class='flag-5'>灯</b>实现方法!

    LED触摸控制PCBA方案开发 | 控触摸方案开发

    单键LED触摸控制PCBA方案开发控触摸方案开发PCBA方案控方案支持定制寻找灵活、可靠的LED灯光
    的头像 发表于 12-10 17:43 634次阅读
    <b class='flag-5'>LED</b>触摸<b class='flag-5'>控制</b>PCBA方案开发 | <b class='flag-5'>灯</b>控触摸方案开发

    FZH367 具有独立自动呼吸功能的LED(12×16)点阵驱动芯片 原厂技术支持

    :3.0V至 5.5V 多达 192 个led(12×16)点阵 点阵的每个LED可以独立开/关控制 点阵的每个LED可以独立 256 级 PWM
    发表于 11-18 09:18

    原厂 FZH365 具有独立自动呼吸功能的LED(12×12)点阵驱动芯片

    led(12×12)点阵 点阵的每个LED可以独立开/关控制 点阵的每个LED可以独立 256 级 PWM
    发表于 11-17 09:38

    LuatOS中PWM实现LED亮度调节与呼吸实战教程

    PWMLED亮度调节和呼吸效果实现方面有着广泛应用。在LuatOS环境中,如何高效运用PWM
    的头像 发表于 11-11 19:05 8696次阅读
    LuatOS中<b class='flag-5'>PWM</b>实现<b class='flag-5'>LED</b><b class='flag-5'>亮度</b>调节与<b class='flag-5'>呼吸</b><b class='flag-5'>灯</b>的<b class='flag-5'>实战</b>教程

    一文读懂 PWM控制背光亮度原理

    关于PWM控制背光亮度原理的详细介绍 一文读懂PWM调光:为何你的屏幕亮度可随心而变? 你是否曾好奇,手机或电脑屏幕的
    发表于 09-03 08:48

    亮度LED具有什么特性?控制LED的方法有哪些?

    采用高亮度LED照明将成为未来汽车的主要特征,这归功于LED相对于传统的白炽光照明方案所具有的许多基本优势。此外,采用LED照明也可带动汽车设计技术和设计风格上的变化。然而,正像任何创
    的头像 发表于 08-29 16:06 1191次阅读
    高<b class='flag-5'>亮度</b><b class='flag-5'>LED</b>具有什么特性?<b class='flag-5'>控制</b><b class='flag-5'>LED</b>的方法有哪些?

    【沁恒CH585开发板免费试用体验】+PWM呼吸

    /下降沿/双边沿 4路26位PWM输出 8路8位PWM输出或前6路16位PWM输出 今天在上期的点灯例程上,修改出两路PWM输出,让开发板上的LED
    发表于 07-03 19:02

    MAX6966/MAX6967 10端口、恒流LED驱动器和输入/输出扩展器,带有PWM亮度控制技术手册

    ))。 * 10mA恒流LED驱动器(静态或PWM)。 * 开漏极逻辑输出。 * 带过压保护的施密特逻辑输入。 内置模拟与开关LED亮度
    的头像 发表于 05-26 09:44 1282次阅读
    MAX6966/MAX6967 10端口、恒流<b class='flag-5'>LED</b>驱动器和输入/输出扩展器,带有<b class='flag-5'>PWM</b><b class='flag-5'>亮度</b><b class='flag-5'>控制</b>技术手册