Timer3 bei ATmega128 konfigurieren

Gast #936238
Hallo

Ich versuche den Timer3 des ATmega so zu konfigurieren, dass er keine 
Aktionen an den OCR3n Pins ausgibt, sondern nur intern hochzählt und 
periodisch einen software Interrupt auslöst...aber ich komm nicht drauf 
warum das bei mir nicht klappt.

Mein Code:
1
  OCR3A = 20000;                 //Maximum value for TCNT3
2

3
  TCCR3A &= ~( (1<<COM3A1) | (1<<COM3A0) ); //Normal port operation, OC3A disconnected
4
  TCCR3A |= (1<<WGM32);      //CTC mode
5
  TCCR3B |= (1<<CS31);                  //Prescaler 8 
6
  TIMSK |= (1<<OCIE3A);             //Interrupts enable
7

8
...
9

10
ISR(TIMER3_COMPA_vect)
11
{
12
  if(PINB & (1<<PB6))
13
        PORTB &= ~(1<<PB6);
14
  else
15
    PORTB |= (1<<PB6);
16
}

Wo ist da der Haken?

Also zuerst setze ich den Maximalwert, dann lösche ich (explizit) die 
Bits COM3A1 und COM3A0, damit der OC3A-Pin nicht ins Timer-geschehen 
eingreift. Mit WGM32 auf 1 aktiviere ich noch den CTC Mode mit 
Maximalwert für TCNT bei OCR3A. Anschließend noch der Prescaler und das 
Interrupt aktivieren.

Ich sehe da einfach keinen Fehler.
Gast #936242
Oh man, ich sollte wirklich eine Pause einlegen...
Ich habe ja ganz vergessen was bei mir nicht geht:

Also ich messe an dem Pin, der eigentlich durch den SW-Interrupt toggeln 
soll keine Aktion. Er geht anscheinend nicht in die Routine rein...auch 
wenn ich andere Pins verwende bleiben diese tot.

Antwort schreiben

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