29 lines
613 B
Python
29 lines
613 B
Python
# Example using PWM to fade an LED.
|
|
# Note: this does not work on Pico W because it uses Pin(25) for LED output.
|
|
|
|
# ruff: noqa: F821 - @asm_pio decorator adds names to function scope
|
|
|
|
import time
|
|
from machine import Pin, PWM
|
|
|
|
|
|
# Construct PWM object, with LED on Pin(25).
|
|
pwm = PWM(Pin(25))
|
|
|
|
# Set the PWM frequency.
|
|
pwm.freq(1000)
|
|
|
|
# Fade the LED in and out a few times.
|
|
duty = 0
|
|
direction = 1
|
|
for _ in range(8 * 256):
|
|
duty += direction
|
|
if duty > 255:
|
|
duty = 255
|
|
direction = -1
|
|
elif duty < 0:
|
|
duty = 0
|
|
direction = 1
|
|
pwm.duty_u16(duty * duty)
|
|
time.sleep(0.001)
|