Arduino Aquaponics: Real-Time-klocka del I (2 / 2 steg)
Steg 2: Arduino bibliotek och skiss
Skiss för denna tutorial visar hur att begära tid från ChronoDot och Visa den över följetong. Del II kommer att täcka inställningen växla gånger.RTClib.h
Biblioteken är nödvändiga för ChronoDot: RTClib.h och tråd (tråd kommer med IDE).
Hämta RTClib zip-filen, extrahera och om nödvändigt Döp till "RTClib" innan en kopia med /arduino-1.0.3/libraries/. Med det korrekta namnet är viktigt.
Arduino skiss
Du kan hitta en förklaring för varje del i kommentarerna.
Datum- och tidsfunktioner med hjälp av en DS3231 RTC ansluten via I2C och tråd Lib
#include < Wire.h >
#include "RTClib.h" / / kredit: Adafruit
RTC_DS1307 RTC;
void setup() {
Börja seriell anslutning
Serial.BEGIN(9600);
Initiera RTC
Wire.BEGIN();
RTC.begin();
Kontrollera om RTC körs.
IF (!. RTC.isrunning()) {
Serial.println ("RTC går inte");
}
Detta avsnitt tar tag i den aktuella datetime och jämför det till
kompileringstid. Om nödvändigt, uppdateras RTC.
DateTime nu = RTC.now();
DateTime sammanställt = DateTime (__DATE__, __TIME__);
om (now.unixtime() < compiled.unixtime()) {
Serial.println ("RTC är äldre än kompileringstid! Uppdatera");
RTC.adjust (DateTime (__DATE__, __TIME__));
}
Serial.println ("Setup fullständig.");
}
void loop() {
Få aktuell tid
DateTime nu = RTC.now();
Visa aktuell tid
Serial.Print ("aktuell tid:");
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();
Delay(10000);
}