Problem mit Zeitsteuerung - achtung Anfänger ;-)

Ich kann zwarr mittlererweile die Zeit anzeigen lassen (im Serial Monitor) aber ich weiß nicht wie ich da was einfügen soll.
Ich hätte an eine If abfrage gedacht aber so einfach ist das dann doch nicht weil ich nicht weiß nach was die fragen soll.

Hallo Kana,
Ja, so einfach ist das dann doch nicht.

Der Code den du da gefunden hast, liest die Zeit in ein String Objekt. Das kann man zwar ausgeben, aber um rauszukriegen, ob die aktuelle Stunde nun 15 oder 16 ist, ( oder was immer du in deinem if abfragen willst), ist das dann doch nicht das einfachste. Und nicht empfehlenswert es überhaupt zu versuchen.

Ausserdem setzt dein Beispiel die DS3234 bei jedem Start auf 11.12.13 14:15:16
Der Vorteil einer RTC ist, dass sie nur ein Mal, nach Batteriewechsel, wieder gestellt werden muss.

( mal angenommen die fehlenden Eckigen Klammern liegen daran, dass das Ganze als Quote statt als Code markiert ist und somit [ i ] verschluckt )

Bau erstmal einen sketch, der 1. die Zeit nicht jedesmal falsch stellt, 2. Datum und Zeit vom Serial Monitor liest und damit die RTC stellt.
Zur Vereinfachung kannst du das auch in 2 sketche packen.
Oder noch einfacher: die zweite Funktion so programmieren, dass Datum und Zeit richtig gestellt werden, wenn du den sketch einmal genau zur richtigen Zeit startest. (D. h. wie jetzt, nur dass du nicht bis 11. Dezember warten musst)

Danach kannst du dich dran machen, eine Funktion zu schreiben, mit der die Zeit als Zahlen gelesen werden können.

Entweder eine Funktion void getTime( byte& h, byte& m, byte& s);
Oder 3 ähnliche Funktionen wie byte getHour(); usw.

Dazu musst du nur sehen, was ReadTimeDate() jetzt macht und das String-Zeug weglassen :wink:

Oder du suchst insgesamt nach passenderem Beispielcode ...