Joy-PI Leçon #02 : Contrôler une LED avec les boutons

Cette fois, nous utiliserons deux GPIO. Le premier permet de lire l’état d’un bouton (une entrée) et le second allumera la LED (une sortie). Si vous ne savez (toujours) pas comment brancher la LED, voyez la leçon #20 : Utiliser la platine.
Le bouton utilisé est le Lower button, connecté au GPIO33.

Commutateurs :

Il faut que le Lower button soit connecté aux GPIO, ce qui est fait en positionnant le switch N°5 du bloc de commutateurs de gauche sur ON.

Le pseudo-code :

  • Importation des librairies
  • Définition des constantes
  • Initialisation des GPIO
  • Dans une boucle infinie
    • La LED est allumée lorsque le bouton est pressé
  • Reset du GPIO lorsque le programme est terminé

En python :

import RPi.GPIO as GPIO

LED_PIN = 37
BUTTON_PIN = 33

GPIO.setmode(GPIO.BOARD)
GPIO.setup(LED_PIN, GPIO.OUT)
GPIO.setup(BUTTON_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.output(LED_PIN, GPIO.LOW)

try :
    while True :
        if (GPIO.input(BUTTON_PIN) == 0) :
            GPIO.output(LED_PIN, GPIO.HIGH)
        else:
            GPIO.output(LED_PIN, GPIO.LOW)
except KeyboardInterrupt:
    GPIO.cleanup()

Le contrôle de la LED peut être réalisé au sein d’un test if /else, comme ci-dessus, ou en utilisant l’état du bouton pour intervenir directement dans la programmation de l’état de la LED :

. . .
try :<br>
    while True :<br>
        GPIO.output(LED_PIN, not GPIO.input(BUTTON_PIN))<br>
except KeyboardInterrupt:<br>
    GPIO.cleanup()

Laisser un commentaire