🛠 LED et bouton avec libgpiod sur le port 40 broches

Banana Pi BPI-M2 Zero (Allwinner H2+ / H3) · debutant · Schéma : IMG-bananapi-m2-zero-debutant-2-clignoter-gpiod-m2-zero.svg — connecteur 40 broches du BPI-M2 Zero (brochage compatible Pi Zero W) : LED + résistance 330 Ω entre la broche 7 (PA6) et la masse, bouton entre la broche 32 (PL2) et GND (broche 6).

Objectifs

Le BPI-M2 Zero porte un connecteur 40 broches dont le brochage reprend celui des Raspberry Pi (les boîtiers et chapeaux Zero W s'adaptent), mais les broches sont des banques Allwinner : gpiochip0 couvre les banques A à E (PA6 = broche 7, déjà câblée en PWM1 par défaut) et gpiochip1 la banque R_PIO PL (PL2 = broche 32, PL4 = broche 36 ; PL10 pilote la LED rouge d'alimentation). Vous allez faire clignoter une LED et lire un bouton avec les outils libgpiod, sans bibliothèque propriétaire.

Matériel

Code complet

sudo apt update && sudo apt install -y gpiod

# Repérer les puces et le nom des lignes du connecteur (CON2-Pxx)
gpiodetect
gpioinfo gpiochip0 | grep -e CON2-P07 -e CON2-P11

# PA6 est PWM1 par défaut : libérer la broche si un overlay pwm la revendique
sudo armbian-config    # System > Hardware > décocher_pwm/pwm-user, puis reboot

# Clignoter 10 fois sur PA6 (broche 7), impulsions de 500 ms
for i in $(seq 10); do
  gpioset -c gpiochip0 PA6=1 --time 500ms
  sleep 0.5
done

# Écouter le bouton sur PL2 — attention : banque PL = gpiochip1 !
gpiomon --num-events 5 --rising-edge gpiochip1 PL2

Vérification attendue

La LED clignote dix fois ; gpiomon affiche un événement par appui (rising-edge grâce au rappel interne ou au câblage vers GND) ; gpioinfo montre la ligne PA6 « requested » pendant le gpioset. La LED rouge PWR (PL10) reste allumée en permanence, ce n'est pas la LED de test.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels