Bonsoir,
Pourquoi est-ce que tu fait des update de l'eeprom dans 3 cas mais pas dans le 4ième?
Si on ignore ça, le code me semble correct, même si je suis pas sur qu'il corresponde exactement à ton intention : ce que tu es en train de dire est la chose suivante :
Étape 1 : si on est en Septembre, Avril, Juin ou Novembre, alors il y a 30 jours, sinon il y en a 31 (y compris si on est en février!!!)
Étape 2 : si on est un février d'année bissextile, alors on change à 29 jours.
Étape 3 : si on est un février d'année non bissextile, alors on change à 28 jours.
Je te proposerais plutôt la structure suivante (plus "propre")
Cas 1 : Septembre, Avril, Juin, Novembre -> 30 jours
sinon, Cas 2:
Cas 2.1 pas février -> 31 jours
sinon, Cas 2.2
Cas 2.2.1 année bissextile -> 29 jours
sinon, Cas 2.2.2 -> 28 jours
Ce qui sous forme de code (plus clair je trouve qu'en mots) donne :
int maxday;// maximum de jours
if (now.month() == 4 || now.month() == 5 || now.month() == 9 || now.month() == 11){ //30 jours = Septembre, Avril, Juin, Novembre.
maxday = 30;
}
else
{
if (now.month() != 2) //pas février, du coup c'est janvier, mars,mai, juillet, aout ou décembre -> 30 jours
{
maxday = 31; //... all the others have 31
}
else //février
{
if(now.year() % 4 == 0) //année bissextile -> 29 jours
{
maxday = 29;
}
else //année normale
{
maxday = 28;
}
}
}
Ou plus clair (je trouve) et plus compact, avec un else if :
int maxday;// maximum de jours
if (now.month() == 4 || now.month() == 5 || now.month() == 9 || now.month() == 11){ //30 jours = Septembre, Avril, Juin, Novembre.
maxday = 30;
}
else if (now.month() != 2) //pas février, du coup c'est janvier, mars,mai, juillet, aout ou décembre -> 30 jours
{
maxday = 31; //... all the others have 31
}
else //février
{
if(now.year() % 4 == 0) //année bissextile -> 29 jours
{
maxday = 29;
}
else //année normale
{
maxday = 28;
}
}
Edit : pour le moteur pas à pas, il faut que tu nous dise quel controleur (driver) tu as et quel type de moteur (unipolaire ou bipolaire). La librairie stepper.h devrait ensuite te permettre de le bouger (tu as la doc en anglais ci : https://www.arduino....erence/Stepper , sinon tu trouvera plein de tutoriels en français)