// Constantes pour les broches
const byte boutonPin = 2; // Broche pour le bouton (PB2)
const byte ledPin = 0;    // Broche pour la LED (PB0)

unsigned long dernierDebounceTime = 0;
unsigned long debounceDelay = 500;

void setup() {
  pinMode(boutonPin, INPUT_PULLUP); // Le bouton est connecté à la masse lorsqu'il est enfoncé
  pinMode(ledPin, OUTPUT);

  // Configuration de l'interruption pour la broche du bouton
  attachInterrupt(0, boutonInterruption, FALLING); // Utilisation directe du numéro de la broche
}

void loop() {
  // Le programme principal peut continuer à s'exécuter ici//
}

void boutonInterruption() {
  // Cette fonction est appelée lorsque le bouton est enfoncé

  // Ignorer les rebonds du bouton
  if ((millis() - dernierDebounceTime) > debounceDelay) {
    // Inversion de l'état de la LED
    digitalWrite(ledPin, !digitalRead(ledPin));
    dernierDebounceTime = millis();
  }
}


ATTINY8520PU