#include "RTClib.h"
#include <Wire.h>
#include <TimeLib.h>
RTC_DS1307 RTC;
time_t time_provider()
{
return RTC.now().unixtime();
}
tmElements_t tm; //part of Time Library
void setup() {
//setSyncProvider(time_provider);
Serial.begin(9600);
Wire.begin(); //sets up the I2C
RTC.begin(); //initializes the I2C to the RTC
if (! RTC.begin()) {
Serial.println("Couldn't find RTC");
}
// Set the RTC Time to 5:10:30 Nov 3 2020
RTC.adjust(DateTime(2020,11,3,5,10,30));
//Set Arduino Time Library different than RTC time 9:27:05
setTime(9, 27, 05, 14, 07, 2015);
//Setting Time Library to RTC time
DateTime now = RTC.now();
tm.Hour = now.hour();
tm.Minute = now.minute();
tm.Second = now.second();
}
void loop() {
setSyncProvider(RTC.now); //
setSyncInterval(5000); //
//Time Library time updates to RTC every 5 seconds
tm.Hour = hour();
tm.Minute = minute();
tm.Second = second();
Serial.print("tm.Hour: ");
Serial.print(tm.Hour);
Serial.println();
Serial.print("tm.Minute: ");
Serial.print(tm.Minute);
Serial.println();
Serial.print("tm.Seconds: ");
Serial.print(tm.Second);
Serial.println();
Serial.println();
delay(1000);
}
Serial Prints:
tm.Hour: 5
tm.Minute: 34
tm.Seconds: 56
tm.Hour: 18
tm.Minute: 0
tm.Seconds: 0
tm.Hour: 5
tm.Minute: 34
tm.Seconds: 56
tm.Hour: 18
tm.Minute: 0
tm.Seconds: 0
tm.Hour: 5
tm.Minute: 34
tm.Seconds: 56
tm.Hour: 18
tm.Minute: 0
tm.Seconds: 0
#include "RTClib.h"
#include <Wire.h>
#include <TimeLib.h>
DS1307 RTC;
time_t time_provider()
{
return RTC.now().unixtime();
}
tmElements_t tm; //part of Time Library
void setup() {
//setSyncProvider(time_provider);
Serial.begin(9600);
Wire.begin(); //sets up the I2C
RTC.begin(); //initializes the I2C to the RTC
if (! RTC.begin()) {
Serial.println("Couldn't find RTC");
}
// Set the RTC Time to 5:10:30 Nov 3 2020
RTC.adjust(DateTime(2020,11,3,5,10,30));
//Set Arduino Time Library different than RTC time 9:27:05
setTime(9, 27, 05, 14, 07, 2015);
//Setting Time Library to RTC time
DateTime now = RTC.now();
tm.Hour = now.hour();
tm.Minute = now.minute();
tm.Second = now.second();
}
void loop() {
setSyncProvider(RTC.now);
setSyncInterval(5000);
//Time Library time updates to RTC every 5 seconds
tm.Hour = hour();
tm.Minute = minute();
tm.Second = second();
Serial.print("tm.Hour: ");
Serial.print(tm.Hour);
Serial.println();
Serial.print("tm.Minute: ");
Serial.print(tm.Minute);
Serial.println();
Serial.print("tm.Seconds: ");
Serial.print(tm.Second);
Serial.println();
Serial.println();
delay(1000);
}
Serial Prints:
tm.Hour: 5
tm.Minute: 34
tm.Seconds: 56
tm.Hour: 18
tm.Minute: 0
tm.Seconds: 0
tm.Hour: 5
tm.Minute: 34
tm.Seconds: 56
tm.Hour: 18
tm.Minute: 0
tm.Seconds: 0
tm.Hour: 5
tm.Minute: 34
tm.Seconds: 56
tm.Hour: 18
tm.Minute: 0
tm.Seconds: 0