Hundertstel in Format mm:ss,hh wandeln

Gast #279762
Lesenswert?
• ▲
▼
Ein Problem gelöst....und gleich das nächste :-(
Ich habe dam mal wieder voll den Balken vorm Kopf.
Da ihr mir schon so oft geholfen habt:
uC als Stoppuhr....ein Timer löst einen Interrupt alle 0,01 Sekunden
aus.....die Variable "hundertstel" wir hochgezählt bis auf 65536.
Dann wird die Variable "vielfaches_hundertstel" um eins erhöht und
"hundertstel" fängt von vorne an....soweit so gut.
Wie rechne ich die Sache denn aber nun geschickt in das Format mm:ss,hh
um ??
Habt ihr das schon mal gemacht ???


HPK
Gast #279763
Lesenswert?
• ▲
▼
warum läst du den Timer bis 65536 laufen?

Spontane schnelle Idee:
wenn du ihn im autoreload von (65536-6000) laufen läßt, hast du in
deinem "Vielfachen" die Minuten.
Und im Timer:
(timer+6000)/100 = sekunden
(timer+6000)%100 = hunderstel

Ich hoffe meine spontane Idee ist so richtig.

Gruß

Thomas
Gast #279764
Lesenswert?
• ▲
▼
für Uhren gibt 2 prinzipielle Wege:
-entweder für jede Zeitstelle ein eigenes Byte benutzen, bei ==60 (oder
100 oder 24) auf Null setzen und das nächsthöhere Byte incrementieren.
Das ist direkt Ausgabefreundlich, mehr aber auch nicht. Aufwändiger in
der Programmierung, langsamer, und rechnen kann man damit so gut wie
gar nicht.
-oder, so ähnlich wie du es angedacht hast, eine Zeiteinheit in einer
entsprechend grossen Variable zählen und erst bei der Ausgabe
formatieren. Das macht man dann mit Divisionen, Ganzzahlteil und Rest.

Mit einer long-Variablen kommst du bei 1/100s immerhin auf >1Jahr, das
sollte genügen.
Bsp: Zählerstand 456789 /100=4567, Rest 89 (1/100s)
4567/60=76, Rest 7 (s)
usw.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.