clignotement d'une LED et action avec un bouton

Bonjour,

Je me casse la tête pour trouver une solution (certainement simple).
J'ai une led qui clignote jusqu'ici ok.

digitalWrite(LED_GREEN, HIGH);  
    delay(300);         
    digitalWrite(LED_GREEN, LOW);  
    delay(300);

Puis, je veux qu'une Led rouge clignote le temps que j'appuis sur un bouton.

if(keypressed()){
        digitalWrite(LED_RED, HIGH);
        delay(200);
        digitalWrite(LED_RED, LOW);
        delay(200);
    }
bool keypressed() {
    bool value = false;
    for (uint8_t i; i < TOTAL_KEY; i++) {
        key[i].update();
        // false because key is pullup and the value is 0 if I push
        if (key[i].read() == 0)  value = true;
    }
    return value;
}

Le problème c'est que ma fonction keypressed() influence le clignotement de ma led ! et la rouge ne s'allume pas immédiatement quand j'appuis!

Du coup, je voudrais votre avis comment résoudre ceci sans avoir recoure à d'autre composent du style 74C14

Lisez l’exemple blink without delay ou le tuto de eskimon sur millis()

Le tuto in english de Nick Gammon est top aussi
Et un tuto millis() sur le forum

Merci :slight_smile: