Created
September 23, 2014 22:19
-
-
Save EstebanMDQ/6388d76704fc7df81b73 to your computer and use it in GitHub Desktop.
DS1307 ejemplo
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Date and time functions using a DS1307 RTC connected via I2C and Wire lib | |
#include <Wire.h> | |
#include "RTClib.h" | |
RTC_DS1307 rtc; | |
void setup () { | |
Serial.begin(57600); | |
#ifdef AVR | |
Wire.begin(); | |
#else | |
Wire1.begin(); // Shield I2C pins connect to alt I2C bus on Arduino Due | |
#endif | |
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(F(__DATE__), F(__TIME__))); | |
// This line sets the RTC with an explicit date & time, for example to set | |
// January 21, 2014 at 3am you would call: | |
// rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0)); | |
} | |
} | |
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); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment