|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
#include "RTClib.h" #include "LCDIC2.h" // Name des RTC-Moduls RTC_DS3231 rtc; // 4-zeiliges LCD LCDIC2 lcd(0x27, 20, 4); void setup() { rtc.begin(); // Zeitpunkt des Kompilierens als aktuelle Zeit setzen rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); // LCD starten lcd.begin(); // Cursor "verstecken" lcd.setCursor(false); } void loop() { // aktuelle Zeit holen DateTime aktuell = rtc.now(); lcd.setCursor(0, 0); /* Wochentag anzeigen 0 = Sonntag 1 = Montag ... 6 = Samstag Donnerstag längster Name: andere Tage mit Leerzeichen auffüllen */ switch (aktuell.dayOfTheWeek()) { case 0: lcd.print("Sonntag "); break; case 1: lcd.print("Montag "); break; case 2: lcd.print("Dienstag "); break; case 3: lcd.print("Mittwoch "); break; case 4: lcd.print("Donnerstag"); break; case 5: lcd.print("Freitag "); break; case 6: lcd.print("Samstag "); break; } lcd.setCursor(0, 1); char Datum[] = "Datum: DD.MM.YYYY"; lcd.print(aktuell.toString(Datum)); lcd.setCursor(0, 2); char Zeit[] = "Uhrzeit: hh:mm:ss"; lcd.print(aktuell.toString(Zeit)); // gemessene Temperatur in String umwandeln // int -> nur ganzzahlige Werte String Temperatur = String(int(rtc.getTemperature())); lcd.setCursor(0, 3); // Sonderzeichen für ° = \337 // Temperatur anzeigen lcd.print("Temperatur: " + Temperatur + "\337C "); } |
Letzte Aktualisierung: