🛠 Bouton poussoir et console série

Arduino MKR WAN 1310 · debutant · Schéma : IMG-mkr-wan-1310-debutant-2-mkrwan1310-bouton-console-serie.svg — Bouton poussoir câblé entre la broche 1 et GND sur une MKR WAN 1310, moniteur série à l'écran.

Objetivos

Leer un botón pulsador en un pin digital de la MKR WAN 1310, contar las pulsaciones y mostrarlas en la consola serie a través del USB nativo del SAMD21. Recordatorios: 8 pines digitales de 3,3 V, 8 interrupciones externas (0, 1, 4, 5, 6, 7, 8, 16/A1, 17/A2), 7 mA máx. por pin.

Material

Código completo

// Bouton sur broche 1 + console série — MKR WAN 1310
const int BUTTON = 1;   // broche compatible EINT pour un réveil future
const int LED    = 6;   // LED_BUILTIN
unsigned long appuis = 0;
unsigned long dernierAppui = 0;

void setup {
  pinMode(BUTTON, INPUT_PULLUP);
  pinMode(LED, OUTPUT);
  Serial.begin(115200);
  while (!Serial);
  Serial.println("Appuyez sur le bouton (broche 1 -> GND)");
}

void loop {
  if (digitalRead(BUTTON) == LOW) {          // actif bas : tirage interne
    unsigned long maintenant = millis;
    if (maintenant - dernierAppui > 50) {    // anti-rebond logiciel 50 ms
      appuis++;
      dernierAppui = maintenant;
      Serial.print("Appui n°");
      Serial.println(appuis);
      digitalWrite(LED, HIGH);
    } else {
      digitalWrite(LED, LOW);
    }
  }
}

Verificación esperada

Cada pulsación muestra «Pulsación n.º X» en el monitor serie (115200 baudios) y enciende D6. El contador no aumenta varios pasos con una sola pulsación gracias a la antirrebote.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales