Probleme de lecture et changement d'animation led neopixel et ezbutton

Vos animations sont bloquantes, donc quand vous en lancez une, plus rien d'autre ne se fait... Par exemple quand vous appelez Prog4Saisons(), si j'enlève les fade()

void Prog4Saisons() {
  delay(2000);
  delay(2000);
  delay(2000);
  delay(2000);
  delay(2000);
  delay(2000);
}

vous voyez que le code attend 12 secondes, bloqué dans cette fonction. Vos boutons ne sont plus tenu à jour, ou le reste de la loop ne s'exécute pas.

➜ si vous voulez que l'utilisateur puisse continuer à intervenir pendant une animation, vous ne pouvez pas développer du code bloquant.

La programmation par machine à états (cf mon tuto éventuellement) permet de gérer ce genre de structure de code.

si vous lisez l'anglais vous pouvez aussi regarder


EDIT: désolé je tapais la même réponse en gros que @terwal et il a été plus rapide :)