🛠 Lire un bouton poussoir et afficher l'état dans la console

Raspberry Pi Model B (Rev 1, 2012) — Ficha de placa · debutant · Schéma : IMG-model-b-rev1-debutant-2-modelb1-bouton-console.svg — Bouton poussoir entre GPIO4 (broche 7) et GND (broche 9), résistance de pull interne activée, terminal affichant l'état lu

Objetivos

Aprender a leer una entrada digital en el conector P1 de 26 pines del Model B Rev 1: un botón pulsador conectado a masa, con la resistencia de pull-up interna del BCM2835 activada mediante libgpiod. Observará el estado del botón en bucle en la consola.

Material

Código completo

#!/bin/sh
# bouton.sh - surveille un bouton sur GPIO4 (broche physique 7)
# c'est la broche 7, GND est la broche 9.
# Rappel interne : GPIO4 possède un pull-up interne activable.

# Lecture en boucle : gpiomon attend les changements d'état
gpiomon --num-events=0 --rising-edge gpiochip0 4 &
while true; do
  ETAT=$(gpioget --bypass-direction-check gpiochip0 4 2>/dev/null || gpioget gpiochip0 4)
  if [ "$ETAT" = "0" ]; then
    echo "BOUTON APPUYE (etat bas = 0, pull-up interne)"
  else
    echo "au repos (1)"
  fi
  sleep 0.1
done

Verificación esperada

En reposo, la consola muestra au repos (1) gracias al pull-up interno. En cada pulsación, el GPIO se conecta a masa y el estado pasa a 0: la consola muestra BOUTON APPUYE. El botón está cableado entre el pin 7 (GPIO4) y el pin 9 (GND).

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales