PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ATmega8 2x 8bit Timer



blan
05.07.2006, 20:53
hallo,
ich habs nun endlich geschafft ein Timer einzubauen. Der ATmega8 verfügt ja über 2x 8bit Timer - bloß wie verwende ich beide?

hab folgenden Code


TIMSK |= (1 << TOIE1);
TCNT0 = 0x0;
TCCR0 |= (1 << CS02) | (1 << CS00);


jedoch wird die funktion SIGNAL(SIG_OVERFLOW1) nicht ausgeführt und den Timer TCCR1 gibts auch nicht. wie verwende ich also beide?

(aus dem datenblatt werde ich nicht schlau)

mfg blan

Hanni
05.07.2006, 21:11
sei() vergessen ?

dennisstrehl
05.07.2006, 21:19
Schau mal im Datenblatt unter 8bit Timer/Counter 2. Dort sind die Register angegeben, mit denen man den zweiten 8bit Counter steuert. Die Prozedur scheint im großen und ganzen dieselbe zu sein, nur halt mit ner 2 dran.
Timer/Counter 1 ist der 16bit-Counter, und der hat nur TCCR1A und TCCR1B, kein TCCR1.

blan
05.07.2006, 21:50
sei() vergessen ?
ne, des hab ich net vergessen - einer geht ja


Schau mal im Datenblatt unter 8bit Timer/Counter 2. Dort sind die Register angegeben, mit denen man den zweiten 8bit Counter steuert. Die Prozedur scheint im großen und ganzen dieselbe zu sein, nur halt mit ner 2 dran.
Timer/Counter 1 ist der 16bit-Counter, und der hat nur TCCR1A und TCCR1B, kein TCCR1.danke funktioniert, jedoch wenn ich den Prescaler von TCCR2 auf 1024 setzte, gehen beide Timer nichtmehr, die LED bleiben stehen statt zu blinken - jemand eine idee woran das liegt?


TIMSK |= (1 << TOIE0) | (1 << TOIE2);
TCNT0 = 0x0;
TCCR0 = (1 << CS00) | (1 << CS02);
TCCR2 = (1 << CS22) | (1 << CS21) | (1 << CS20);

mfg blan

dennisstrehl
05.07.2006, 22:51
Also, normalerweise sollte sowas nicht passieren. Könntest du vielleicht den kompletten Quellcode posten? Weil ich glaube in den 4 Zeilen liegt der Fehler nicht ;-)

MfG

blan
05.07.2006, 23:18
Also, normalerweise sollte sowas nicht passieren. Könntest du vielleicht den kompletten Quellcode posten? Weil ich glaube in den 4 Zeilen liegt der Fehler nicht ;-)

MfG

oh sorry, war mein fehler - das teil is einfach synchron gelaufen und sah nach einem dauerleuchten aus :D

danke für die hilfe mit dem TCCR2 !

mfg blan