🛠 Lire un bouton poussoir et afficher dans la console

Orange Pi 5 Plus (Rockchip RK3588) · debutant · Schéma : IMG-orangepi-5-plus-debutant-2-opi5p-bouton-console.svg — bouton poussoir entre la broche 7 et la masse avec résistance de pull-up 10 kΩ vers 3,3 V, terminal console affichant les appuis

Objectifs

Lire l'état d'un bouton poussoir sur le connecteur 40 broches et afficher un message dans la console à chaque appui, avec gpiomon (libgpiod) qui attend les fronts sur une ligne GPIO. On réutilise la broche 7 (GPIO1_D6 = gpiochip1, ligne 30) déjà câblée au tuto LED : retirez la LED avant de commencer.

Matériel

Code complet

# Attente d'un seul appui (front descendant : repos au niveau haut grâce au pull-up)
sudo gpiomon --num-events=1 --falling-edge gpio1 30

# Boucle complète : un message par appui, anti-rebond 50 ms
while sudo gpiomon --num-events=1 --falling-edge \
      --debounce-edge-period 50000000 gpio1 30 >/dev/null; do
    echo "Bouton pressé à $(date +%T)"
done

Vérification attendue

gpiomon se bloque puis affiche une ligne du type event: 1 falling edge au premier appui. Avec la boucle, chaque appui imprime « Bouton pressé » avec l'heure ; sans anti-rebond, un appui unique peut déclencher 2 à 5 événements (rebond mécanique du contact).

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels