Two wire I2C interface
Hour : Minutes : Seconds AM/PM
Day Month, Date - Year
Leap year compensation
Accurate calendar up to year 2100
DS1307 based RTC with LIR2032 battery (Battery included)
1Hz output pin
56 Bytes of Non-volatile memory available to user
Size: 28x27x8.4mm
Cela peut servir a gérer une alarme sur plusieurs mois,année, surveillance d'une cuve eau de pluie ect..
avec la pile, le module peut facilement tenir 2 ans
----------------------------------------
Code : Tout sélectionner
//Arduino with Tiny RTC I2C et
#include <Wire.h>
#include "RTClib.h"
RTC_DS1307 RTC;
void setup () {
Serial.begin(9600); //Initialiser le port serie
Wire.begin(); //Initialiser la bibliotheque Wire
RTC.begin(); //Initialiser le module RTC
//Verifier si le module RTC fonctionne, sinon nous envoyons Erreur
if (! RTC.isrunning()) {
Serial.println("RTC is NOT running!");
//Enlever le commentaire de la ligne suivante, pour mettre le module a l'heure du PC
//RTC.adjust(DateTime(__DATE__, __TIME__));
}
}
void loop () {
Serial.print("Ont est le ");
DateTime now = RTC.now();
//--------
switch (now.dayOfWeek()) {
case 1:
Serial.print("Lundi ");
break;
case 2:
Serial.print("Mardi ");
break;
case 3:
Serial.print("Mercredi ");
break;
case 4:
Serial.print("Jeudi ");
break;
case 5:
Serial.print("Vendredi ");
break;
case 6:
Serial.print("Samedi ");
break;
case 7:
Serial.print("Dimanche ");
break;
}
//--------------
if (now.day() < 10){Serial.print("0");}
Serial.print(now.day(), DEC);Serial.print('/'); //Imprimer Jour et barre
if (now.month() < 10){Serial.print("0");}
Serial.print(now.month(), DEC);Serial.print('/'); //Imprimer mois et barre
Serial.print(now.year(), DEC);Serial.print(' '); //Imprimer annee et espace
Serial.print(", il est ");
if (now.hour() < 10){Serial.print("0");}
Serial.print(now.hour(), DEC); Serial.print(':'); //Imprimer heure et :
if (now.minute() < 10){Serial.print("0");}
Serial.print(now.minute(), DEC);Serial.print(':');//Imprimer minute et :
if (now.second() < 10){Serial.print("0");}
Serial.print(now.second(), DEC);Serial.println(); //Imprimer seconde et saut de ligne
delay(5000); //Delay de 5s entre les envoies ecran}
}
Code : Tout sélectionner
Ont est le Mercredi 26/06/2013 , il est 17:44:45
Ont est le Mercredi 26/06/2013 , il est 17:44:50
Ont est le Mercredi 26/06/2013 , il est 17:44:55
Ont est le Mercredi 26/06/2013 , il est 17:45:00
Ont est le Mercredi 26/06/2013 , il est 17:45:05
Ont est le Mercredi 26/06/2013 , il est 17:45:10
Ont est le Mercredi 26/06/2013 , il est 17:45:15
Ont est le Mercredi 26/06/2013 , il est 17:45:20
Ont est le Mercredi 26/06/2013 , il est 17:45:25
Ont est le Mercredi 26/06/2013 , il est 17:45:30
Ont est le Mercredi 26/06/2013 , il est 17:45:35
Ont est le Mercredi 26/06/2013 , il est 17:45:40