mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR-Timer Overflow, ich kapiere es nicht


Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Folgendes macht mich im Moment völlig fertig, ich schnall es einfach 
nicht:

ATiny26
8Mhz über internal RC-Clock, bestmöglich kalibriert.
Ich nutze Timer-Overflow0. Kein weiterer Int aktiviert.
Der Timer-Vorteiler steht auf 1

In der ISR wird nur ein Portbit an-aus geschaltet, damit ich die 
Frequenz des INT messen kann.

Nun müsste der Timer-Int mit einber Frequenz von 31250Khz kommen.
Denn 8000000/256 = 31250
Klappt einwandfrei, Oszi und Frequenzzähler bestätigen das sogar recht 
genau. Das Signal ist ein wunderbares rechteck ohne Störungen etc.

Nun will ich aber einen Timer-Int mit 40Khz
Also lade in der ISR (direkt als erstes) TCNT0 mit einem Wert vor.
Der Wert ist 56, weil: 256-56=200 und 8000000/200 = 40Khz.

KLAPPT NUR NICHT. Die gemessene Frequenz ist immer ca.36Khz.
40Khz bekomme ich erst ab einem Vorladewert von ca.75
Könnte ich natürlich so lassen, aber rechnerisch stimmt es einfach nicht 
und will wissen warum. Kann mir das mal jemand erklären?

Grüsse
Dennis

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für konstante Interrupt-Rate sollte man den CTC Mode verwenden, denn 
sonst beeiflusst die Verarbeitungszeit des Interrupts das Zeitverhalten.

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.