Taktfrequenz stimmt nicht

Gast #2123536
Lesenswert?
• ▲
▼
Hallo,
ich habe mir eine Platine zum Phasenanschnitt mit einem ATMEGA2561 und 
einem 16MHz Quarz gebastelt.
Mein Problem ist, der Microcontroller arbeitet nicht mit 16 MHZ.
Zum Testen des Takt habe ich folgenden Code verwendet:

void Timer0Init (void){

  TCCR0B= 0x00;  //stopp Timer
  TCCR0A= 0x00;  //normal Mode
  TIMSK0= 0x02;  //compA
  TCNT0=0;    //1 Takt = 64us  156=9,984ms
  OCR0A = 156;
  TCCR0B= 0x05;  //Vorteiler 1024
}

ISR (TIMER0_COMPA_vect)
{
  TCNT0=0;
  PORTB ^= (1<<PB0);
}

Das Problem, die LED toggelt mit 80ms und nicht wie berechnet mit ~10ms!
Bei den Fuse-Bits habe ich "Ext Cryst Osc 8- MHz Start-Up 16K + 65ms" 
gewählt. Also sollte er eigentlich meinen externen 16Mhz Quarz 
verwenden. Und nicht mit 2MHz laufen. Kondensatoren beim Quarz betragen 
15pF.

Weiß einer, wo das Problem liegen könnte?
Gruß Markus

Antwort schreiben

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.

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.