Gast
#5402229
Hallo, ich hätte mal eine frage. Kann man beim Atmega8 beim Timer2, die
beiden Interruptmakros gleichzeitig benutzen?
Wenn ja wie muss ich das umschreiben das es funktioniert (zumindest paar
Tipps), wäre euch sehr dankbar.
Der Timer2_comp_vect soll hochzählen wenn eine steigende flanke ist und
der timer2_OVF_vect soll das ergebnis von einer Sekunde oder 5 sekunden
speichern. dieses wird dann auf einem Display übertragen. Am Timer 1
befindet sich schon ein Motor mit PWM das man mit einem POTI regelt.
Oder kann ich am Timer1 noch den Timer1_OVF_vect ansteuern da der ja 16
Bit und nicht wie timer2 8Bit?
TCCR1A |= (1<<WGM10); // Fast-PWM (8-Bit)
TCCR1A |= (1<<COM1A1); // nicht invertieredner PWM-Modus
TCCR1B |= (1<<WGM12); //
TCCR1B |= (1<<CS12); // Prescaler 256
TCCR2 = (1<<CS22)| (1<<CS21) | (1<<CS20);
TIMSK |=(1<<OCIE2)| (1<<TOIE1);
ISR (TIMER2_COMP_vect)
{
b=b;
static unsigned char zustand;
if (zustand ==0 && !(PINB &(1<<PB3)))
{
zustand =1;
b++;
}
else if (zustand ==1 && !(PINB &(1<<PB3)))
zustand = 2;
}
else if (zustand ==2 && (PINB &(1<<PB3)))
{
zustand=0;
}
}
ISR (TIMER2_OVF_vect)
{
d=b;
b=0;
}