这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 体验树莓派RP2040的PWM功能

共1条 1/1 1 跳转至

体验树莓派RP2040的PWM功能

专家
2026-05-17 21:21:01     打赏

在MicroPython下使用RO2040的PWM功能非常简单,以PWM驱动板载LED形成呼吸灯的效果为例,

from machine import Pin, PWM
from time import sleep
# 初始化 PWM 引脚 (板载 LED 通常连接 GPIO25)
# 如果使用外接 LED,可以连接其他 GPIO 引脚
led = PWM(Pin(25))
# 设置 PWM 频率 (Hz)
led.freq(1000)
# PWM 占空比范围: 0 - 65535
# 0 = 完全关闭, 65535 = 完全开启
def breathing_effect():
    while True:
        # 逐渐变亮
        for duty in range(0, 65535, 1000):
            led.duty_u16(duty)
            sleep(0.01)
        
        # 逐渐变暗
        for duty in range(65535, 0, -1000):
            led.duty_u16(duty)
            sleep(0.01)
# 运行呼吸灯效果
breathing_effect()

直接使用PWM库即可,开发板没有给GPIO25提供引脚,下面以GPIO16为例,查看PWM输出效果,

from machine import Pin, PWM
from time import sleep
# 如果使用外接 LED,可以连接其他 GPIO 引脚
led = PWM(Pin(16))
# 设置 PWM 频率 (Hz)
led.freq(1000)
# PWM 占空比范围: 0 - 65535
# 0 = 完全关闭, 65535 = 完全开启
def breathing_effect():
    while True:
        # 逐渐变亮
        for duty in range(0, 65535, 10000):
            led.duty_u16(duty)
            sleep(0.01)
        
        # 逐渐变暗
        for duty in range(65535, 0, -10000):
            led.duty_u16(duty)
            sleep(0.01)
# 运行呼吸灯效果
breathing_effect()

为了方便观察占空比的变化,改变了调节量,通过逻辑分析仪获取到的结果,

pwm.png





关键词: 大懒猫的试用笔记     RP2040     PWM    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]