🛠 Lire un bouton et afficher dans la console

ODROID-M1 (Hardkernel) · debutant · Schéma : IMG-odroid-m1-debutant-2-odroidm1-bouton-console.svg — bouton-poussoir entre une broche GPIO et la masse, résistance de pull-up interne activée, terminal console à l'écran

Objetivos

Configurar un pin del conector de 40 pines como entrada con resistencia pull-up interna, leer un botón pulsador en Python con libgpiod y mostrar cada pulsación en la consola. Esta es la base de toda interacción física con el ODROID-M1.

Material

Código completo

#!/usr/bin/env python3
"""Compteur d'appuis sur bouton, libgpiod (chip/ligne à adapter)."""
import time
from gpiod import chip, line

CHIP, LIGNE = "gpiochip1", 22  # exemple banque gpio1 du RK3568B2
compteur = 0
with chip(CHIP) as g:
    g.request_lines(consumer="bouton", config={
        LIGNE: line.RequestConfig(
            line=LIGNE, consumer="bouton",
            request_type=line.RequestType.INPUT,
            bias=line.Bias.PULL_UP),
    })
    print("En attente d'appuis (Ctrl-C pour quitter)...", flush=True)
    while True:
        if g.get_value(LIGNE) == 0:      # bouton fermé vers la masse
            compteur += 1
            print(f"Appui n°{compteur}", flush=True)
            time.sleep(0.3)              # anti-rebond logiciel
        time.sleep(0.05)

Verificación esperada

Cada pulsación muestra «Pulsación n.º X» en la consola; soltar el botón no genera nada gracias al pull-up interno.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales