mirror of
https://github.com/digistump/DigistumpArduino.git
synced 2025-04-28 07:39:02 -07:00
62 lines
1.6 KiB
Plaintext
62 lines
1.6 KiB
Plaintext
![]() |
// Date and time functions using a DS1307 RTC connected via I2C and Wire lib
|
||
|
|
||
|
#include <TinyWireM.h>
|
||
|
#include "TinyRTClib.h"
|
||
|
|
||
|
RTC_DS1307 RTC;
|
||
|
|
||
|
void setup () {
|
||
|
Serial.begin(115200);
|
||
|
TinyWireM.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
|
||
|
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();
|
||
|
|
||
|
Serial.print(" since midnight 1/1/1970 = ");
|
||
|
Serial.print(now.unixtime());
|
||
|
Serial.print("s = ");
|
||
|
Serial.print(now.unixtime() / 86400L);
|
||
|
Serial.println("d");
|
||
|
|
||
|
// calculate a date which is 7 days and 30 seconds into the future
|
||
|
DateTime future (now.unixtime() + 7 * 86400L + 30);
|
||
|
|
||
|
Serial.print(" now + 7d + 30s: ");
|
||
|
Serial.print(future.year(), DEC);
|
||
|
Serial.print('/');
|
||
|
Serial.print(future.month(), DEC);
|
||
|
Serial.print('/');
|
||
|
Serial.print(future.day(), DEC);
|
||
|
Serial.print(' ');
|
||
|
Serial.print(future.hour(), DEC);
|
||
|
Serial.print(':');
|
||
|
Serial.print(future.minute(), DEC);
|
||
|
Serial.print(':');
|
||
|
Serial.print(future.second(), DEC);
|
||
|
Serial.println();
|
||
|
|
||
|
Serial.println();
|
||
|
delay(3000);
|
||
|
}
|