16bit-Timer auf 256000Hz einstellen

Gast #53915
Hallo,
ich kenne mich noch nicht gut mit den Timer aus. Wie kann ich den
16bit-Timer eines ATMega16 einstellen, so dass 256000 mal pro Sekunde
ein Interupt ausgelöst wird? Die Taktfrequenz beträgt des AVR beträgt
3553600Hz.
Brauch ich dafür den Compare-Match-Interupt?

Danke
Gast #53916
@Roland,

bei dieser Taktfrequenz garnicht.

Das nächstmögliche wäre 273353.846 bei einem Vorteiler (TCCR) von 0 und
entweder für Timer 1 TCNT1L=0xf3 TCNT1H=0xff oder für Timer 0
TCNT0=0xf3.

Mit einem Quarz von 4.608MHz und
  TCCR = 0
  Timer 1 TCNT1L=0xee TCNT1H=0xff
  Timer 0 TCNT0=0xee
ginge es.

Es ginge auch mit 9.216MHz oder 6.144MHz und den jeweils angepassten
Werten.

Zum berechnen gibt es übrigens ein gutes Tool Namens
"AVR FP Calc and Timer Tool" (AVRCalc) von Jack Tidwell.

Gruß Jörg

Antwort schreiben

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