Hi, in der angehängten Datei befindet sich ein Ausschnitt aus einem Programm, das ich gerade schreibe, bei dem der Timer1 meines mega8 im ctc-Modus betrieben werden soll. Zu debug-Zwecken gibt die main-Funktion über ein LCD ständig den Wert des Zählers aus. Dieser sollte sich meinen Berechnungen der Timerparameter zufolge alle 0,235s um eins erhöhen. Stattdessen tut er dies nur ca. alle 20s. Ich habe schon hier im Forum gesucht, und alle implementationen des Timers sahen ziemlich ählich aus, aber vielleicht hab ich ja irgendwas übersehen? Grüße, Kai
> TCCR1B = (1<<WGM12); > [...] > TCCR1B = (1<<CS12) | (1<<CS10); Überleg mal, was in der zweiten Zeile mit dem Bit passiert, das Du in der ersten Zeile gesetzt hast... Na, klingelt's?
so muss das sein! TCCR1B |= (1<<WGM12); TCCR1B |= ((1<<CS12) | (1<<CS10));
Oha, brett vorm Kopf! Ich muss das ja verodern, wenn ich die anderen lassen will, wie sie sind. Vielen Dank, suche schon lange nach einer (komplzierteren) lösung...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.