FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Apprendre à utiliser les broches GPIO de votre Raspberry Pi ouvre un monde de possibilités. Les bases acquises avec des projets pour débutants vous initient à l'électronique DIY et à la programmation.

Ce tutoriel détaillé présente deux façons d'ajouter un bouton poussoir à votre Raspberry Pi pour contrôler une LED. Suivez les instructions écrites accompagnées de la vidéo.

Matériel requis

Pour démarrer, rassemblez ces composants :

  • 1 x Raspberry Pi (tout modèle convient, un 3B est utilisé ici)
  • 1 x Bouton poussoir
  • 1 x LED
  • 1 x Résistance 220 Ω (valeurs plus élevées OK, LED plus faible)
  • 1 x Breadboard
  • Fils de connexion

Vos composants devraient ressembler à ceci :

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Vous aurez aussi besoin d'une carte SD avec Raspbian (ou Raspberry Pi OS). Utilisez NOOBS pour une installation rapide. Voir la vidéo dédiée.

Montage du circuit

Utilisez les broches GPIO. Consultez notre guide des broches GPIO si nécessaire. Ce circuit étend notre projet LED précédent avec un bouton.

Montez selon ce schéma :

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi
  • Broches 5V et GND vers les rails d'alimentation de la breadboard.
  • Broche 12 (GPIO 18) vers l'anode (+) de la LED.
  • Une patte de la résistance à la cathode (-) de la LED, l'autre au rail GND.
  • Broche 16 (GPIO 23) d'un côté du bouton, l'autre côté au rail GND.

Votre montage final :

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Vérifiez tout, puis allumez le Raspberry Pi.

Méthode 1 : Bibliothèque RPi.GPIO

Démarrez le Raspberry Pi, ouvrez Programmation > Thonny Python IDE. Créez un nouveau script. Python est idéal pour débutants.

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Importez RPi.GPIO et activez le mode BOARD :

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)

Définissez les broches (mode BOARD = numéros physiques) :

ledPin = 12
buttonPin = 16

Consultez le tableau des broches si besoin.

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Configuration du bouton

LED en sortie, bouton en entrée avec pull-up interne :

GPIO.setup(ledPin, GPIO.OUT)
GPIO.setup(buttonPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)

La pull-up interne maintient HIGH jusqu'au pressage (vers GND).

Focus : Résistances pull-up/pull-down

Une entrée GPIO lit HIGH, LOW ou FLOATING (instable). Les pull-up/down évitent le flottant.

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Schémas simplifiés montrent le fonctionnement. Pull-up : HIGH par défaut, LOW au pressage.

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Pull-down inverse. Essentiel pour microcontrôleurs.

Boucle principale

while True:
    buttonState = GPIO.input(buttonPin)
    if buttonState == False:
        GPIO.output(ledPin, GPIO.HIGH)
    else:
        GPIO.output(ledPin, GPIO.LOW)

Loop infinie lit le bouton : LOW allume LED, HIGH l'éteint.

Sauvegarde et exécution

Fichier > Enregistrer sous. Cliquez Jouer (vert). Stop (rouge) pour arrêter.

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Testez : LED s'allume au pressage !

Tutoriel : 2 méthodes simples pour ajouter un bouton à votre projet Raspberry Pi

Problèmes ? Vérifiez code et circuit.

Méthode 2 : Bibliothèque GPIO Zero

GPIO Zero simplifie le code (par Ben Nuttall, Raspberry Pi).

Nouveau script :

from gpiozero import LED, Button
from signal import pause

Instanciez :

led = LED(18)
button = Button(23)

Numéros BCM (GPIO). Événements :

button.when_pressed = led.on
button.when_released = led.off
pause()

Sauvegardez, exécutez : même résultat, code minimal !

Conclusion

GPIO Zero est plus simple, mais maîtrisez RPi.GPIO pour projets avancés. Appliquez à d'autres idées !

Explorez notre guide Raspberry Pi. Essayez un bouton Wi-Fi connecté.

[]