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(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


Zur Library RTC DS3231