🛠 Variation d'intensité d'une LED avec le PWM matériel

Raspberry Pi 3 Model A+ (2018) — Ficha de placa · intermediaire · Schéma : IMG-model-3a-plus-intermediaire-1-model3a-pwm-led.svg — Raspberry Pi 3 A+ : LED + 330 Ω sur GPIO18 (broche 12, PWM matériel), GND broche 14, oscillogramme du rapport cyclique

Objetivos

Variar la intensidad de un LED mediante modulación de ancho de pulso (PWM) en la Raspberry Pi 3 A+: PWM por hardware en GPIO18 (pin 12, señal «PWM» del conector de 40 pines) frente a PWM por software con gpiozero, ciclo de trabajo y frecuencia.

Material

Código completo

#!/usr/bin/env python3
# pwm_led.py — respiration de LED (GPIO18 = PWM matériel)
from gpiozero import PWMLED
from time import sleep

led = PWMLED("GPIO18", pwm=True)   # GPIO18 = broche 12, PWM matériel
led.pwm_frequency = 100            # Hz ; défaut gpiozero : 100 Hz

# respiration : montée puis descente du rapport cyclique
for i in range(0, 101, 5):
    led.value = i / 100.0          # 0.0 = éteinte, 1.0 = pleine
    sleep(0.05)
for i in range(100, -1, -5):
    led.value = i / 100.0
    sleep(0.05)

# clignotement précis piloté par le contrôleur PWM matériel
led.blink(on_time=0.5, off_time=0.5, fade_in_time=0.2, fade_out_time=0.2)
sleep(5)
led.off
python3 pwm_led.py
# Vérifier le brochage PWM : le site de référence du connecteur 40 broches

Verificación esperada

El LED aumenta progresivamente su luminosidad durante ~1 s, luego disminuye y parpadea con transiciones suaves. Con un multímetro en GPIO18, la tensión media sigue el ciclo de trabajo (≈1,65 V al 50 % sobre una base de 3,3 V).

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales