AVR Timer Prescaler Problem

Gast #1450048
Hallo Leute,

ich habe ein Problem mit dem Prescaler des Timer1 auf meinem AVR 328 
(Arduino Board mit Arduino Entwicklungsumgebung).

Wenn ich den Prescaler auf 64 (TCCR1B CS12=0, CS11=1, CS=10=1) setze, 
dann wird, wie von mir gewünscht, die Timer1 Overflow Routine 
(TIMER1_OVF_vect) richtig und kontinuierlich aufgerufen.

Setze ich aber den Prescaler auf 256 (TCCR1B CS12=1, CS11=0, CS=10=0), 
dann wird die Overlow ISR genau 1 mal ausgeführt, danach nie wieder.

Am Code habe ich, mit Ausnahme von TCCR1B ansonsten nichts geändert?

Woran könnte das liegen, habt ihr eine Idee?

Grüße,
Bastian
Gast #1450059
Wie bekommst du denn raus, dass er den Timer Interrupt nicht mehr 
aufruft? Vielleicht liegt ja darin der Fehler... Und Simulierst du oder 
läuft das Programm auf dem AVR?
Gast #1450242
Ich lasse einen Zähler in der ISR inkrementieren und lasse mir den 
seriell ausgeben. Beim Prescaler 64 läuft er normal hoch, beim 256er 
bleibt er konstant auf 1.

Ich lasse ihn direkt auf dem AVR laufen, nicht im Simulator.

Antwort schreiben

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