RTC- Uhr um Datum / Wochentag erweitern

Gast #6566194
Lesenswert?

Hallo,
ich habe eine Uhr, so wie in diesem Link, gebaut.
https://funduino.de/arduino-rtc
Es klappt soweit. Leider bekomme ich nicht hin, dass Datum und 
Wochentag
angezeigt werden. Die kurze Beschreibung verstehe ich nicht und ein 
Forum auf
der Seite gibts nicht mehr.
Wer kann mir helfen, vielen Dank im Voraus
Max.
Gast #6566249
Lesenswert?

Hallo, so habe ich es eingefügt

nach:
 lcd.setCursor(2, 0);

  printDay();


nach:
Serial.print(digits);
}

void printDay()
{
int day;
day = weekday();
if(day == 1){lcd.print("So, ");}
if(day == 2){lcd.print("Mo, ");}
.
.
.
if(day == 7){lcd.print("Sa, ");}
}
Gast #6566267
Lesenswert?

Max schrieb:
> Hallo, so habe ich es eingefügt
>
> nach:
>  lcd.setCursor(2, 0);
>
>   printDay();

Der Beschreibung nach sollst du printDay() vor dem Schreiben des Datums 
einfügen, also so:

lcd.setCursor(1, 1); // Der nächste „Text“ soll nun beim zweiten Zeichen 
..
printDay();

und NICHT direkt nach: lcd.setCursor(2, 0);
Gast #6566327
Lesenswert?

Max schrieb:
> Wer kann mir helfen

Der DS1307 stellt Wochentag und Datum (Tag, Monat, Jahr) in den 
Registern 3 bis 6 zur Verfügung (Datenblatt S.8).
Ob das direkt mit deiner Bibliothek geht und wie, hängt von der von dir 
verwendeten Bibliothek ab. Sonst musst die einfach die Register lesen 
und die Werte passend formatiert auf die Anzeige geben.
Gast #6566338
Lesenswert?

1
....
2
lcd.setCursor(1, 1); // Der nächste „Text“ soll nun beim zweiten Zeichen in der zweiten Reihe beginnen.
3
printDay();
4
lcd.print(day()); // Das Datum soll nun als
5
....
So sollte es der Beschreibung nach, aussehen.
Gast #6566898
Lesenswert?

Max schrieb:
> if(day == 1){lcd.print("So, ");}
> if(day == 2){lcd.print("Mo, ");}
> .
> .
> .
> if(day == 7){lcd.print("Sa, ");}

Das wäre auch ziemlich "bescheiden" ...
besser z.B.

const char days[] = {"So, ", "Mo, ", ...};

lcd.print(days[day]);

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren