Je veux que mon horloge en temps réel règle son heure comme l'heure sur mon PC. Cependant, lorsque j'exécute l'esquisse suivante, l'horloge en temps réel signale l'heure comme étant 32-33 secondes plus tôt que mon ordinateur ne le dit.
#include <Wire.h>
#include "RTClib.h"
RTC_DS1307 RTC;
void setup () {
Serial.begin(57600);
Wire.begin();
RTC.begin();
if (! RTC.isrunning()) {
Serial.println("RTC is NOT running!");
// following line sets the RTC to the date & time this sketch was compiled
// uncomment it & upload to set the time, date and start run the RTC!
RTC.adjust(DateTime(__DATE__, __TIME__));
}
}
void loop () {
DateTime now = RTC.now();
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(' ');
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
}
J'ai également essayé de régler manuellement l'heure sur le RTC, mais je me retrouve avec le même problème: le RTC est toujours 32-33 secondes derrière ce que je l'ai réglé. Le décalage se produit dès que je lance le croquis. Il me semble très étrange que peu importe comment j'essaie de régler l'heure, je me retrouve avec exactement la même erreur. Je peux dire à l'Arduino de signaler le temps comme étant 33 secondes après ce que le RTC dit qu'il est, mais cette solution semble un peu sommaire, et je crains que quelque chose ne fonctionne fondamentalement avec mon RTC ou la façon dont je l'utilise.
J'utilise un Arduino Uno avec un bouclier de journalisation de données assemblé d'Adafruit. Le bouclier d'enregistrement des données utilise un RTC DS1307. Quelqu'un a-t-il déjà eu ce problème ou a-t-il une idée de ce qui pourrait en être la cause? Toute aide serait très appréciée.