Dans ce cours on va voir un exemple simple d’utilisation des GPIOS de la Raspberry Pi avec le branchement d’une LED. On verra comment faire clignoter celle-ci et varier la luminosité de la LED grâce au PWM.
Voici le circuit pour relier votre LED à la Raspberry Pi :
La carte à des GPIOS qui fonctionnent en +3.3V. On utilise donc une résistance de 220 ohms afin de limiter le courant en entrée de la LED.
Voici le programme pour faire clignoter la LED :
import RPi.GPIO as GPIO
import time
# Configuration des broches
led_pin = 17
# Configuration initiale de la GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(led_pin, GPIO.OUT)
try:
# Faire clignoter la LED pendant 10 secondes
for _ in range(10):
GPIO.output(led_pin, GPIO.HIGH) # Allumer la LED
time.sleep(0.5) # Attendre 0.5 secondes
GPIO.output(led_pin, GPIO.LOW) # Éteindre la LED
time.sleep(0.5) # Attendre 0.5 secondes
finally:
# Nettoyer les ressources GPIO
GPIO.cleanup()
Voici le programme pour faire varier la luminosité de la LED :
import RPi.GPIO as GPIO
import time
# Configuration des broches
led_pin = 17
# Configuration initiale de la GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(led_pin, GPIO.OUT)
# Configuration du PWM
pwm_frequency = 1000 # Fréquence PWM en Hertz
pwm = GPIO.PWM(led_pin, pwm_frequency)
try:
pwm.start(0) # Démarre le PWM avec un rapport cyclique de 0%
# Faire varier l'intensité de la LED pendant 10 secondes
for duty_cycle in range(0, 101, 5):
pwm.ChangeDutyCycle(duty_cycle)
time.sleep(0.5)
for duty_cycle in range(100, -1, -5):
pwm.ChangeDutyCycle(duty_cycle)
time.sleep(0.5)
finally:
# Nettoyer les ressources GPIO
pwm.stop()
GPIO.cleanup()