mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Stunde, Minuten messen


Autor: olaf schulz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

kennt jemand eine elegante Möglichkeit, längere Zeiten wie Stunden oder
Minuten (z. B. 120 min) mit einem Mikrocontroller zu messen?
Ich habe überlegt, mit einem Timer eine Variable (oder Array)
hochzuzählen, könnten das Problem bei längeren Zeitabschnitten geben?

Vielen Dank
Olaf

Autor: formtapez (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du die Hälfte des RAMs eines 2313er (64 Byte) als Variable benutzt
kannst Du
bei 1 MHz Takt ~4,2 * 10^140 Jahre "messen".

MfG
formtapez

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man kann auch einfach einen Uhrenquarz mit niedrigerer Frequenz an den
Controller anschließen und dieses Signal hochzählen. Wie du das
programmtechnisch realisieren kannst zeigt ein Beispiel von Peter
Dannegger in der Codesammlung, wenn ich mich recht entsinne.

Gruss Alex

Autor: andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo.du kannst ja mit dem Timer jede Sekunde einen interrupt
auslösen.Bei jedem 60 interrupt lässt du wiederum einen zweiten zähler
hochzählen.Damit sollten 120 minuten kein problem sein.
gruss
Andy

Autor: olaf schulz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@formtapez

wie kommst du denn auf diese Zahl?

vielen dank auch an die anderen
olaf

Autor: Fritz Ganter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Olaf

Er wirds wohl ausgerechnet haben.

Autor: andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo.Was meinst du mit "Wie kommt er den auf diese Zahl"?
Ist doch eigentlich ganz simpel.
gruss
Andy

Autor: Adam (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Olaf,
die Zahl errechnet sich auf diese Weise:

64 Byte Speicher bieten Platz für 2^(64*8) = 1.34e154 Zustände.

Da bei nach jeder Sekunde 1 Mio Zustände durchlaufen werden, kannst Du
1.34e154/10^6 = 1.34e148 Sekunden speichern.

Auf Jahre umgerechent macht das: 1.34e148/60/60/24/365 = 4,25e140
Jahre

Mfg Adam

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.