Ich bin ein einem Proekt und will ein 4 7 Segment Display Sekunden und Minuten vom Start des Programms programmieren. Ich habe schon ein Programm diese zählt aber nicht im richtigen Sekundentakt.
Was ist falsch oder was könnte ich anders machen???
Ich nehme mal an dein Zähler läuft ein wenig zu langsam ??
Delay ist keine gute Idee.
Das macht ca. 1 Sekunde Pause aber dein Code macht ja auch noch andere Dinge die
Zeit brauchen also bis du schon >1 Sekunde -> Ausgabe wieder 1 Sekunde warten
und wieder Zeit für "alles Mögliche". Uhr geht nach.
Warum eigentlich Zähler / 1000 ?
Da du bei Zähler = 0 anfängst ergibt Zähler / 1000 erst nach fast 20 Minuten 1 !!!!
Besser ist es du misst die Zeit mit "millis" !
.
.
.
.
uint32_t lastMillis = 0;
void loop()
{
if ((millis() - lastMillis) > 1000) // in Millisekunden
{
lastMillis = millis();
Zaehler ++;
/* Tue was immer du tun willst */
lastMillis = millis();
}
// And so on ........
}
Ich möchte zu einem späteren Programm parallel die Programmlaufzeit auf einer 7 Segmentanzeige laufen lassen.
Ich hätte gerne, dass die beiden letzten Ziffern bis 59 zählen und die vorderen Zahlen die Minuten anzeigen.
Ich weiss allerdings nicht wie ich an die Sache ran gehen soll.
Du kannst mich ruhig duzen, aber bitte beschränke technische Fragen auf das Forum,
dann haben auch andere etwas davon und können sich vor allem an der Diskussion beteiligen.
Wie kann ich Minuten und Sekunden auf einem 4 7 Segmanet Display anzeigen lassen?
Die ersten zwei Segmente sollen die Minuten anzeigen die anderen zwei die Sekunden.
Die Laufzeit beträgt vorraussichtlich 30min. Eine Anzeige in Sekunden reicht nicht und eine Anzeige in Minuten wäre für die Anwendung "langweilig".