🛠 Bouton poussoir et messages console

Hardkernel ODROID-C2 (Amlogic S905) · debutant · Schéma : IMG-odroid-c2-debutant-2-odroidc2-bouton-console.svg — bouton poussoir avec résistance de pull-up 10 kΩ vers 3,3 V sur le connecteur J2

Objetivos

Leer un botón pulsador en el ODROID-C2 y mostrar un mensaje en la consola en cada pulsación, combinando la entrada GPIO (wiring-odroid) y la salida stdout — la base de toda interfaz hombre-máquina.

Material

Código completo

/* bouton.c — gcc bouton.c -lwiringPi -o bouton */
#include <wiringPi.h>
#include <stdio.h>
#include <time.h>

#define BTN 11   /* broche physique 11, bouton vers GND */

int main(void) {
    if (wiringPiSetupPhys == -1) { perror("wiringPiSetupPhys"); return 1; }
    pinMode(BTN, INPUT);   /* pull-up 10k externe vers 3,3 V requis */
    int last = HIGH, appuis = 0;
    for (;;) {
        int etat = digitalRead(BTN);
        if (etat == LOW && last == HIGH) {
            appuis++;
            printf("Appui n%d — bouton actif (niveau bas)\n", appuis);
            fflush(stdout);
            delay(50);     /* anti-rebond logiciel */
        }
        last = etat;
        delay(5);
    }
}

Verificación esperada

Cada pulsación muestra una línea «Pulsación n1», «Pulsación n2»… en la consola. Soltar y volver a pulsar cuenta como una nueva pulsación; mantener el botón pulsado no debe repetir el mensaje (antirrebote).

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales