Funktionen der Library MyDS3231
MyDS3231 MyDS3231(byte i2cAdd)
Funktion: Erzeugt eine neue Instanz
Parameter: i2cAdd: I2C-Adresse des DS3231
Beispiel:
MyDS3231 RTC(0x68);
bool isReady(void)
Funktion: Überprüft, ob der DS3231 über die I2C-Schnittstelle ansprechbar ist
Parameter: keine
Rückgabe: TRUE, wenn Sensor ansprechbar ist, sonst FALSE
Bemerkung: Die Funktion prüft nur, ob in einem I2C-Bus der Bauteil ansprechbar bzw. vorhanden ist. Es wird vorausgesetzt, dass der I2C-Bus technisch prinzipiell funktioniert (keine offenen Busleitungen, Pullup-Widerstände richtig, kein Kurzschluss oder Masseschluss, etc.).
void nowDateTime(void)
Funktion: Lesen von Datum, Uhrzeit und Wochentag aus dem DS3231 und speichern der Daten in Library-Variablen
Parameter: keine
Rückgabe: keine
Bemerkung: Die Funktion speichert die ausgelesenen Daten in den Library-Variablen
- nowDay, nowMonth und nowYear für das Datum,
- nowHour, nowMin, und nowSec für die Uhrzeit und
- nowDow für den Wochentag.
Beispiel:
RTC.nowDateTime();
Serial.print(RTC.nowDay);
Serial.print(".");
Serial.print(RTC.nowMonth);
Serial.print(".");
Serial.println(RTC.nowYear);
void setDate(byte day, byte month, byte year)
Funktion: Setzen des Datums
Parameter: day: Tag (1 <= day <= 31)
month: Monate (1 <= month <= 12)
year: Jahr (0 <= year <= 99)
Rückgabe: keine
void setTime(byte hour, byte min, byte sec)
Funktion: Setzen des Datums
Parameter: hour: Stunde (0 <= hour <= 23)
min: Minute (0 <= min <= 59)
sec: Sekunde (0 <= sec <= 59)
Rückgabe: keine
void setDST(bool state)
Funktion: Umstellen der Uhrzeit zwischen Sommer- und Winterzeit (Sommerzeit: DST - Daylight Save Time)
Parameter: state: DST_ON : Sommerzeit Ein
DST_OFF: Sommerzeit Aus
Rückgabe: keine
Beispiel:
RTC.setSummerTime(DST_OFF);
void setDow(byte dow)
Funktion: Setzen des Wochentages (Day of week)
Parameter: dow: Wochentag (1 <= day <= 7)
1 ... Montag, 2 ... Dienstag, usw. 7 ... Sonntag
Rückgabe: keine
void getDateString(char* dateString, byte format)
Funktion: Rückgabe des Datums als char-String
Parameter: dateString: Name des char-Strings, in dem das Datum gespeichert wird
format: Format des Datums YEAR2 oder YEAR4
YEAR_2_DIG: Das Jahr wird 2-stellig gespeichert (z.B. 18 für 2018)
YEAR_4_DIG: Das Jahr wird 4-stellig gespeichert
Rückgabe: keine
Bemerkung: Vor Aufruf der Funktion muss das Datum mit nowDateTime() aktualisiert werden
Beispiel:
char dateString[11];
RTC.nowDateTime();
//Ausgabe des Datums in der Form, z.B. 01.01.2018
RTC.getDateString(dateString, YEAR_4_DIG);
Serial.println(dateString);
void getTimeString(char* timeString, byte format)
Funktion: Rückgabe der Uhrzeit als char-String
Parameter: timeString: Name des char-Strings, in den die Uhrzeit gespeichert wird
format: Format der Uhrzeit MM_SS, HH_MM oder HH_MM_SS
MM_SS: Nur Minuten und Sekunden werden gespeichert
HH_MM: Nur Stunden und Minuten werden gespeichert
HH_MM_SS: Stunden, Minuten und Sekunden werden gespeichert
Rückgabe: keine
Bemerkung: Vor Aufruf der Funktion muss die Uhrzeit mit nowDateTime() aktualisiert werden
Beispiel:
char timeString[9];
RTC.nowDateTime();
//Ausgabe der Uhrzeit in der Form, z.B. 15:23
RTC.getTimeString(timeString, HH_MM);
Serial.println(timeString);
void getDowString(char* dowString)
Funktion: Rückgabe des Wochentages als char-String
Parameter: dowString: Name des char-Strings, in dem der Wochentag gespeichert wird
Rückgabe: keine
Bemerkung: Vor Aufruf der Funktion muss der Wochentag mit nowDateTime() aktualisiert werden
Variable:
uint8_t nowDay
Funktion: Variable beinhaltet den mit der Funktion nowDateTime() gelesenen Tag des aktuellen Datums
uint8_t nowMonth
Funktion: Variable beinhaltet das mit der Funktion nowDateTime() gelesene Monat des aktuellen Datums
uint8_t nowYear
Funktion: Variable beinhaltet das mit der Funktion nowDateTime() gelesene Jahr des aktuellen Datums
uint8_t nowHour
Funktion: Variable beinhaltet die mit der Funktion nowDateTime() gelesene Stunde der aktuellen Zeit
uint8_t nowMin
Funktion: Variable beinhaltet die mit der Funktion nowDateTime() gelesene Minute der aktuellen Zeit
uint8_t nowSec
Funktion: Variable beinhaltet die mit der Funktion nowDateTime() gelesene Sekunde der aktuellen Zeit
uint8_t nowDow
Funktion: Variable beinhaltet den mit der Funktion nowDateTime() gelesenen Wochentag des aktuellen Datums
Bemerkung: 1 .... Montag, 2 ... Dienstag, usw., 7 ... Sonntag