www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATmega8 Zeitschaltuhr


Autor: Simon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mir mal das Tutorial zu Timern des Mega8 durchgelesen,
jedoch geht das alles nur im Sekunden bereich,
ist so etwas auch mit Stunden möglich?

Autor: antworter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was hindert dich daran die Sekunden zu zählen, um auf Stunden zu kommen 
?

Autor: Simon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du eine Idee wie sowas aussieht?

Autor: antworter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja.

Weißt Du, was Subtraktion und was eine Variable ist ?

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Simon wrote:
> Hast du eine Idee wie sowas aussieht?

http://www.hanneslux.de/avr/stopuhr/index.html
http://www.hanneslux.de/avr/zuenduhr/index.html

Oder etwas einfacher...

...

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Simon wrote:
> Hast du eine Idee wie sowas aussieht?

Sicher

Nach 60 Sekunden ist eine Minute vergangen.
Nach 60 Minuten ist eine Stunde vergangen.
Nach 24 Stunden ist ein Tag vergangen.

Also: Die Sekunden immer schön um 1 vermindern.
Wenn die Sekunden 0 erreicht haben, ziehst du bei den
Minuten 1 ab und setzt die Sekunden wieder zurück auf 59.
Denn -1 Sekunden gibt es nicht.
Wenn die Minuten 0 sein sollte, dann wird nicht 1 abgezogen
sondern die Minuten wieder auf 59 gesetzt und dafür von den
Stunden 1 abgezogen.
Wenn hingegen die Stunden bereits 0 sein sollten, dann
werden die Stunden auf 23 gesetzt und dafür von den Tagen
1 abgezogen.

Am besten machst du dir das mal an ein paar Beispielen
mit Papier und Bleistift klar, wie eine Uhr eigentlich
funktioniert.

Wieviel ist  1 T 02:01:50  weniger 1 Sekunde?
             1 T 02:01:49
             1 T 02:01:48
             ....
             1 T 02:01:03
             1 T 02:01:02
             1 T 02:01:01
             1 T 02:01:00        <- hier erfolgt Minutensprung
             1 T 02:00:59
             1 T 02:00:58
             1 T 02:00:57
             ...
             1 T 02:00:03
             1 T 02:00:02
             1 T 02:00:01
             1 T 02:00:00        <- hier erfolgt Minutensprung
                                 <- Minuten sind aber bereits 0
                                 <- daher erfolgt auch ein
                                 <- Stundensprung
             1 T 01:59:59
             1 T 01:59:58
             1 T 01:59:57
             ...


Jetzt noch je eine Variable für Tage, Stunden, Minuten und
Sekunden und schon kanns losgehen.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Jetzt noch je eine Variable für Tage, Stunden, Minuten und
> Sekunden und schon kanns losgehen.

Bei den Monaten, Jahren (mit Schaltjahren), Jahrhunderten (mit 
ausfallenden Schaltjahren) usw. wird es dann etwas lustiger...

;-)

...

Autor: AVR-Jünger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hannes Lux wrote:
>> Jetzt noch je eine Variable für Tage, Stunden, Minuten und
>> Sekunden und schon kanns losgehen.
>
> Bei den Monaten, Jahren (mit Schaltjahren), Jahrhunderten (mit
> ausfallenden Schaltjahren) usw. wird es dann etwas lustiger...
>
> ;-)
>
> ...

Deswegen hab ich auch bei Tagen aufgehört :-)
Allerdings wird es Zeitschaltuhren die über Jahrhunderte
laufen wohl nur bei 'Indiana Johns' geben. Da dann allerdings
in Stein ausgeführt in einem Maya-Tempel mit Spinnweben
überwuchert ...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.