Bonjour,
petit problème de gestion/calcul temps
morceaux de mon prog :
// basculement heure/nuit
long heureN=73800L; // 20h
long heureJ=28800L; // 8h// brumi jour
long brumiJ=(heureJ+900L); // 08h15
long brumiN=(heureN-3600L); // 19h30long temps_brumi=20;
long brumi_seche_T1=4; // Nombre brumi periode seche
int mois_sec_T1=6; // Mois periode seche
long brumi_pluie_T1=7; // Nombre brumi periode pluie
int mois_pluie_T1=9; // Mois periode Pluielong brumi_seche_T2=4; // Nombre brumi periode seche
int mois_sec_T2=6; // Mois periode seche
long brumi_pluie_T2=7; // Nombre brumi periode pluie
int mois_pluie_T2=9; // Mois periode Pluielong brumi_seche_T3=4; // Nombre brumi periode seche
int mois_sec_T3=6; // Mois periode seche
long brumi_pluie_T3=7; // Nombre brumi periode pluie
int mois_pluie_T3=9; // Mois periode Pluielong brumi_seche_T4=4; // Nombre brumi periode seche
int mois_sec_T4=6; // Mois periode seche
long brumi_pluie_T4=7; // Nombre brumi periode pluie
int mois_pluie_T4=9; // Mois periode Pluielong espacement_brumi_seche_T1=((brumiN-brumiJ)/(brumi_seche_T1-2L));
long espacement_brumi_pluie_T1=((brumiN-brumiJ)/(brumi_pluie_T1-2L));long espacement_brumi_seche_T2=((brumiN-brumiJ)/(brumi_seche_T2-2L));
long espacement_brumi_pluie_T2=((brumiN-brumiJ)/(brumi_pluie_T2-2L));long espacement_brumi_seche_T3=((brumiN-brumiJ)/(brumi_seche_T3-2L));
long espacement_brumi_pluie_T3=((brumiN-brumiJ)/(brumi_pluie_T3-2L));long espacement_brumi_seche_T4=((brumiN-brumiJ)/(brumi_seche_T4-2L));
long espacement_brumi_pluie_T4=((brumiN-brumiJ)/(brumi_pluie_T4-2L));long compteur_brumi_T1;
long compteur_brumi_T2;
long compteur_brumi_T3;
long compteur_brumi_T4;
void setup();
void loop(
if (((brumiJ<=current) && (current<(brumiJ+temps_brumi)))) // première brumisation
{
compteur_brumi_T1=brumiJ+espacement_brumi_pluie_T1;
compteur_brumi_T2=brumiJ+espacement_brumi_pluie_T2;
compteur_brumi_T3=brumiJ+espacement_brumi_pluie_T3;
compteur_brumi_T4=brumiJ+espacement_brumi_pluie_T4;
digitalWrite(R31,HIGH);
}
else
{
digitalWrite(R31,LOW);
}if (((brumiN<=current) && (current<(brumiN+temps_brumi)))) // dernière brumisation
{
compteur_brumi_T1=0;
compteur_brumi_T2=0;
compteur_brumi_T3=0;
compteur_brumi_T4=0;
digitalWrite(R31,HIGH);
}
else
{
digitalWrite(R31,LOW);
}if ((compteur_brumi_T1<=current) && (current<(compteur_brumi_T1+temps_brumi))) // brumisation en journée
{
digitalWrite(R31,HIGH);
}
else
{
digitalWrite(R31,LOW);
compteur_brumi_T1=compteur_brumi_T1+espacement_brumi_pluie_T1;
}
les 2 premièrs digitalwrite fonctionne, les autres non
j essaie quelque chose qui n est pas possible ?