Preload Wert richtig berechnet?

Gast #1560909
Hallo,

könnte mir jemand nur kurz bestätigen, ob ich richtig mit meiner Annahme 
liege? Ich möchte 5 Sekunden messen.
Prozessor ist ein Atmega 8 auf 8Mhz
Verwendung 8-bit Timer
Prescaler: 8 --> 1000000 Ticks für 1 Sekunde, 1000 Ticks für 1ms

Der 8-bit Timer zählt von 0...255 (also 256 Schritte).
Für 1ms brauche ich also 4 overflows (1000/256=3,90625). Um den genauen 
Wert zu bestimmen rechne ich also mit 4 overflows --> 1024 Ticks. Sind 
24 Ticks zu viel bei 4 Overflows.
Also verteile ich die 24 Ticks auf 4 Overflow und müsste demnach den 
Timer mit 24/4=6 vorladen.
Ist das so richtig?
Dann hätte ich 1ms
über eine if-Anweisung kann ich ja dann mir die Sekunden zählen lassen:

ISR()
ms_counter++
if (ms_counter >= 1000)
sekunde++

//Hauptprogramm
main()
if (sekunde==5)
//do sth

Funktioniert das so?

Danke&Gruß
Christian
Marc Donner schrieb:

> Warum nicht gleich den Timer1? CTC Mode und Interrupt bei OCR1A. OCR1A
> auf 1000.

Wenns eine länger laufende Uhr werden soll, dann ist das sowieso die 
bessere Lösung.
Allerdings dann gleich den Vorteiler auf 1 und OCR1A auf 8000.

Grund: Der Quarz läuft nicht mit exakt 8000000Hz sonder ein bischen 
daneben. Läuft eine Uhr länger, dann summiert sich das.
Mit dem CTC Modus kannst du das aber im Extremfall bis aufs Hz genau 
ausgleichen.
http://www.mikrocontroller.net/articles/AVR_-_Die_genaue_Sekunde_/_RTC

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 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.