Timer bei 0 starten??

Gast #48249
Hallo!

Ich will, wenn ein externer Interrupt ausgelöst wurde den 16-bit Timer
meines ATmega8 laufen lassen, beim nächsten externen Interrupt den
Timerwert aubspeichern und dann den Timer von neuem zählen lassen. Nun
meine Frage: Wie kann ich dem Timer mitteilen, dass er wieder von neuem
zu zählen beginnt? einfach 0x00 in die beiden Timerregister schreiben,
oder gibt es da eine andere, bessere Lösung? Bin für alle Tipps und
Tricks sehr dankbar!

Danke für eure Mühe!
Gast
Hallo

eine Möglichkeit indem der Zähler automatisch zurückgesetzt wird ist
mittels Hilfe des Compare Registers. Hat der Zählerwert den Wert im
Compare Register so wird Flag gesetzt und der Zähler beginnt erneut bei
0 (einstellbar). Für Deine Anwendung jedoch ist diese Methode
ungeeignet. Ich würde auch einfach eine 0 in das Zählerregister
schreiben, ist doch am einfachsten oder ??

Viele Grüße

Peter
Man kann den Timer auch durchlaufen lassen und sich den vorherigen
Zählerstand merken und die Differenz bilden.

Das ist z.B. immer dann sinnvoll, wenn der Timer noch nebenbei andere
Sachen machen soll, wie PWM, RTC usw.


Peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.