Bonjour, j'ai un projet qui nécessite l'utilisation d'une horloge temps réel (RTC). (C'est mon premier projet/expérience de programmation.)
Je ne parviens pas à rentrer l'heure dans ma RTC. J'utilise une carte arduino UNO, ainsi qu'un mikro BUS I2C et un RTC DS1307.
N'ayant pas d’expérience en programmation, je suis allé sur internet et j'ai essayé des programmes écris par d'autres, mais jusqu'ici aucun n'a marché...
Bien le bonjours, je pense qu'on est dans la même situation!
Moi aussi je suis sur un projet, et dans mon programe je ne parvien pas a initilaliser l'heure :s actuellement le programme que j'ai fonctionne mais utilise l'heure du pc et ne peut pas changer :s voici le programe
#include <Wire.h> //La librairie Wire va être utilisé
#include "RTClib.h" //La librairie RTClib va être utilisé
RTC_DS1307 RTC;
void setup ()
{
Serial.begin(9600); //Demarre le serial et met le débit de communication a 9600
Wire.begin(); //La librairie Wire commence
RTC.begin(); //La librairie RTC commence
if (!RTC.isrunning()) // Si la RTC ne marche pas
{
Serial.println("La RTC ne marche pas"); //Ecrire "La RTC ne marche pas"
RTC.adjust(DateTime(__DATE__, __TIME__));
}
}
void loop () {
DateTime now = RTC.now();
if (now.day() <10) // Si le chiffre des jours est inférieur a 10
{
Serial.print ("0"); //Afficher un 0 (de façon a éviter les 3/XX/XXXX et mettre a la place 03/XX/XXXX
}
Serial.print(now.day(), DEC); //Afficher le jour actuel
Serial.print("/"); //Afficher /
if (now.month() <10) //Si le chiffre des mois est inférieur a 10
{
Serial.print ("0"); // Afficher 0
}
Serial.print(now.month(), DEC); //Afficher le mois actuel
Serial.print("/"); //Afficher /
Serial.print(now.year(), DEC); //Afficher l'année actuel
Serial.print(" "); //Afficher un espace
if (now.hour() <10) //Si le chiffre des heures es inférieur a 10
{
Serial.print ("0"); //Alors afficheer un 0
}
Serial.print(now.hour(), DEC); //Afficher l'heure actuel
Serial.print(":"); //Afficher :
if (now.minute() <10) //Si le chiffre des minute est inférieur a 10
{
Serial.print ("0"); //Afficher un 0
}
Serial.print(now.minute(), DEC); //Addicher les minute actuel
Serial.print(":"); //Afficher :
if (now.second() <10) //Si le chiffre des seconde est inférieur a 10
{
Serial.print ("0"); //Afficher 0
}
Serial.print(now.second(), DEC); //Afficher les minute actuel
Serial.println(" "); //Retour a la ligne
delay(1000); // attendre une seconde avant le reprise de la boucle
}
Pour l'utiliser il faut que tu installe la librairie RTC-Master
Si tu as des info sur comment mettre a jour l'heure je t'en remercirai!