🛠 Lire un bouton avec une résistance de pull-up interne

Arduino Micro · debutant · Schéma : IMG-micro-debutant-2-micro-bouton-pull-up.svg — Bouton à connexion branché entre la broche 2 et GND sur une Arduino Micro, avec la résistance de pull-up interne symbolisée sur l'entrée

Objetivos

Leer un botón pulsador en el Arduino Micro utilizando la resistencia de pull-up interna (20 a 50 kΩ), sin componentes externos, y comprender la lógica activa en bajo (active-low).

Material

Código completo

// Bouton sur broche 2 vers GND, pull-up interne actif.
// Logique active-low : lecture LOW quand le bouton est enfonce.
const uint8_t BTN = 2;   // les broches 0,1,2,3,7 portent aussi une interruption externe
bool etatLed = false;

void setup {
  pinMode(BTN, INPUT_PULLUP);     // pull-up interne 20-50 kOhm
  pinMode(LED_BUILTIN, OUTPUT);   // broche 13
  Serial.begin(9600);             // Serial = port USB CDC
}

void loop {
  if (digitalRead(BTN) == LOW) {  // bouton enfonce
    delay(50);                    // anti-rebond grossier
    if (digitalRead(BTN) == LOW) {
      etatLed = !etatLed;
      digitalWrite(LED_BUILTIN, etatLed);
      Serial.println(etatLed ? "LED ON" : "LED OFF");
      while (digitalRead(BTN) == LOW) {}  // attendre le relachement
    }
  }
}

Verificación esperada

Cada pulsación cambia el estado del LED 13 y muestra LED ON / LED OFF en el Monitor serie (puerto serie del Micro). No se observan rebotes: una pulsación genera una sola línea.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales