Timer 2 starten; AtMega

Gast #4376865
Lesenswert?
• ▲
▼
Hallo Leute,

ich bin gerade dabei, zu versuchen, den Timer 2 zu starten. Ich kriege 
es aber nicht hin.

Folgender Code will nicht funktionieren:
1
//Timer 2
2
//Vorteiler = 1024
3
TIMSK |= (1<<OCIE2)|(1<<TOIE2);
4
TCCR2 |= (1<<CS20)|(1<<CS21)|(1<<CS22);
5
OCR2 = 125;

Ich bin eigentlich der Meinung, dass es genügt den Vorteiler zu setzen 
und der Timer dann anfängt zu zählen.

Im Datenblatt habe ich auch keinen speziellen Hinweis gefunden. Was 
mache ich falsch?
Gibt es sonst noch etwas zu beachten?
Ich verwende alle 3 Timer (Timer0, Timer1 funktionieren wunderbar).

Vielen Dank für eure Hilfe.
Gast #4377063
Lesenswert?
• ▲
▼
Man, seid ihr Witzbolde. Dummes Gelaber kann ich nicht brauchen!

Ich nutze einen AtMega8L und ich toggel einen Pin in der Timer overflow 
Service Routine. Zusätzlich gebe ich mir jede Sekunde das TCNT Register 
per UART auf den PC aus.
Hat es vielleicht etwas mit dem asynchronen Modus zu tun?
Gast #4377068
Lesenswert?
• ▲
▼
Toni schrieb:
> Man, seid ihr Witzbolde. Dummes Gelaber kann ich nicht brauchen!

Du bist doch der Witzbold, der sämtliche Details für sich behält und nur 
einen 3-Zeilen Codeschnipsel in die Debatte wirft. Vielleicht hast du 
deinen Interrupt nicht frei gegeben oder sonstwas. Ohne Code wird das 
nichts ...
Gast #4377443
Lesenswert?
• ▲
▼
Toni schrieb:

> Man, seid ihr Witzbolde. Dummes Gelaber kann ich nicht brauchen!

Dummes Gelaber sind Situationsbeschreibungen, bei denen alle 
wesentlichen Punkte fehlen. Also z.B. deine!

Es kann doch nicht so schwer sein, zumindest den konkreten Controller 
anzugeben, ein vollständiges Programm, welches das Problem aufweist und 
eine Darstellung dessen, was du erwartest, was passieren sollte und 
dessen, was statt dessen passiert.

Wer dazu nicht in der Lage ist, ist als Programmierer völlig 
unbrauchbarer Müll, denn genau das ist immer das, womit man eine 
Fehlersuche beginnt: möglichst viele Variablen von vornherein 
ausschließen, denn das reduziert den Suchraum für die möglichen Fehler 
auf das Minimum...

> Ich nutze einen AtMega8L und ich toggel einen Pin in der Timer overflow
> Service Routine.

Das z.B. könnte schon das Problem sein. Wenn du nämlich den Timer nicht 
aus der "Reset-Konfiguration" heraus initialisierst.

> Hat es vielleicht etwas mit dem asynchronen Modus zu tun?

Solange du den nicht konfigurerierst: sicher nicht. Und in den drei 
Zeilen Code, die du gepostet hast, konfigurierst du ihn nicht. Also: 
nein.

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.