| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /*
- * Heure.c
- *
- * Created on: 14 mai 2019
- * Author: e_rcluze
- */
- #include "RTC.h"
- int8_t CompareHeure(Heure h1,Heure h2){
- if( h1.heure==h2.heure){
- if (h1.minute==h2.minute)
- return 0;
- else if (h1.minute<h2.minute)
- return -1;
- else
- return 1;
- }
- else if (h1.heure<h2.heure)
- return -1;
- else
- return 1;
- }
- void HeureAjout(Heure res,Heure h1,uint8_t Pente){
- uint8_t minute=h1.minute+Pente;
- res.heure=h1.heure+minute/60;
- res.minute=minute%60;
- }
- void HeureSuppr(Heure res,Heure h1,uint8_t Pente){
- int8_t minute=h1.minute-Pente;
- if (minute<0) {
- res.heure=h1.heure-1;
- res.minute=minute+60;
- }
- else {
- res.heure=h1.heure;
- res.minute=minute;
- }
- }
- int16_t DiffHeure(Heure h1, Heure h2){
- return ((h1.heure-h2.heure)*60)+(h1.minute-h2.minute);
- }
- int32_t DiffDate(Date h1, Date h2){
- int32_t min = h1.minute - h2.minute;
- int32_t heure = (h1.heure - h2.heure)*60;
- int32_t jour = (h1.jour - h2.jour)*24*60;
- int32_t annee = (h1.annee - h2.annee)*24*60*365;
- return min+heure+jour+annee;
- }
|