first commit

This commit is contained in:
Jérôme Delacotte
2025-03-06 11:15:32 +01:00
commit 7b30d6e298
5276 changed files with 2108927 additions and 0 deletions

View File

@@ -0,0 +1,248 @@
#include "Date_heure.h"
#include <Arduino.h>
//tableau de char pour la gestion des jour par mois
int jParM[12]={31,28,31,30,31,30,31,31,30,31,30,31};
/*_____________________________________________fonction validation minute____________________________*/
int VAL_MINUTE(int MINUTE)
{
if (MINUTE>59){
MINUTE=0;
};
if (MINUTE<0){
MINUTE=59;
};
return MINUTE;
}
/*_____________________________________________fonction validation heure____________________________*/
int VAL_HEURE(int HEURE)
{
if (HEURE>23){
HEURE=0;
};
if (HEURE<0){
HEURE=23;
};
return HEURE;
}
/*_____________________________________________fonction validation mois____________________________*/
int VAL_MOIS(int MOIS)
{
if (MOIS>12){
MOIS=1;
};
if (MOIS<1){
MOIS=12;
};
return MOIS;
}
/*_____________________________________________fonction validation annee____________________________*/
int VAL_ANNEE(int ANNEE)
{
if (ANNEE>2100){
ANNEE=2012;
};
if (ANNEE<1){
ANNEE=2012;
};
return ANNEE;
}
/*_____________________________________________fonction validation jour____________________________*/
int VAL_JOUR(int JOUR, int MOIS, int ANNEE)
{
if (MOIS==1||MOIS==3||MOIS==5||MOIS==7||MOIS==8||MOIS==10||MOIS==12){
if (JOUR<1){
JOUR=31;
};
if (JOUR>31){
JOUR=1;
};
};
//////////////////////////////////////////////////////////////////////////////
if (MOIS==4||MOIS==6||MOIS==9||MOIS==11){
if (JOUR<1){
JOUR=30;
};
if (JOUR>30){
JOUR=1;
};
};
///////////////////////////////////////////////////////////////////////////
if (MOIS==2&&bisex(ANNEE)==true){
if (JOUR<1){
JOUR=29;
};
if (JOUR>29){
JOUR=1;
};
};
////////////////////////////////////////////////////////////////////////////
if (MOIS==2&&bisex(ANNEE)==false){
if (JOUR<1){
JOUR=28;
};
if (JOUR>28){
JOUR=1;
};
};
return JOUR;
}
bool bisex(int annee){
//ce qui suit permet de determiner si l'annéee et bisextile renvoi vrai ou faux
int r1;
if(annee%400==0){
r1=1;
}
else{
r1=0;
};
int r2;
if(annee%100==0){
r2=1;
}
else{
r2=0;
};
int r3;
if(annee%4==0){
r3=1;
}
else{
r3=0;
};
int reponse;
if(r1-r2+r3==1){
reponse=true;
}
else{
reponse=false;
};
return reponse;
}
/*_____________________________________________fonction evenement____________________________*/
boolean Evenement(Date*date_1,Date*date){
boolean reponse=false;
if( (date->a-date_1->a)==0 && (date->m-date_1->m)==0 &&(date->j-date_1->j)>=0){
reponse=true;//Serial.println(" 1 Vrai");
}else if((date->a-date_1->a)==0 && (date->m-date_1->m)>=0){
reponse=true;//Serial.println(" 2 Vrai");
}
else if((date->a-date_1->a)>0){
reponse=true;//Serial.println(" 3 Vrai");
}else{//Serial.println(" faux");
}
return reponse;
}
/*_____________________________________________fonction evenement____________________________*/
boolean Evenement(int j_1,int m_1,int a_1,int j,int m,int a){
boolean reponse=false;
if( (a-a_1)==0 && (m-m_1)==0 &&(j-j_1)>=0){
reponse=true;//Serial.println(" 1 Vrai");
}else if((a-a_1)==0 && (m-m_1)>=0){
reponse=true;//Serial.println(" 2 Vrai");
}
else if((a-a_1)>0){
reponse=true;//Serial.println(" 3 Vrai");
}else{//Serial.println(" faux");
}
return reponse;
}
/*_____________________________________________fonction evenement____________________________*/
boolean Evenement(int j_1,int m_1,int a_1,Date*date){
boolean reponse=false;
if( (date->a-a_1)==0 && (date->m-m_1)==0 &&(date->j-j_1)>=0){
reponse=true;//Serial.println(" 1 Vrai");
}else if((date->a-a_1)==0 && (date->m-m_1)>=0){
reponse=true;//Serial.println(" 2 Vrai");
}
else if((date->a-a_1)>0){
reponse=true;//Serial.println(" 3 Vrai");
}else{//Serial.println(" faux");
}
return reponse;
}
/*_____________________________________________fonction evenement____________________________*/
boolean Momment(int heure, int minute, int seconde ,Heure*Hrtc){
boolean reponse=false;
if( (Hrtc->h-heure)==0 && (Hrtc->m-minute)==0 &&(Hrtc->s-seconde)>=0){
reponse=true;
}
if( (Hrtc->h-heure)==0 && (Hrtc->m-minute)>=0){
reponse=true;
}
if((Hrtc->h-heure)>0){
reponse=true;
}
#ifdef DEBUG_SERIAL
if (reponse==true){
Serial.println(F("Momment OK"));
}
else{
Serial.println(F(" Momment pas OK"));
};
#endif
return reponse;
}
/*_____________________________________________fonction evenement____________________________*/
boolean Momment(Heure*heure_T,Heure*heure){
boolean reponse=false;
if( (heure->h-heure_T->h)==0 && (heure->m-heure_T->m)==0 &&(heure->s-heure_T->s)>=0){
reponse=true;
}
if( (heure->h-heure_T->h)==0 && (heure->m-heure_T->m)>=0){
reponse=true;
}
if((heure->h-heure_T->h)>0){
reponse=true;
}
#ifdef DEBUG_SERIAL
if (reponse==true){
Serial.println(F("Momment OK"));
}
else{
Serial.println(F(" Momment pas OK"));
};
#endif
return reponse;
}
/*_____________________________________________fonction convertion de long heur en heur minute seconde____________________________*/
void convertHeur(long *h,int *heure, int *minute,int *seconde){
*heure=(*h/3600);//heure entiere
*minute=(*h/60)-((*heure)*60);// les minute entiere
*seconde=*h-((*minute)*60)-(((*heure)*60)); //les seconde entiere
return;
}