Hallo Geimel,

um den Output Compare Match Intrrupt zu aktivieren, muss man die Bits OCIE1A für Output Compare A Match bzw. OCIE1B für Output Compare B Match im TIMSK setzten. Nun wird beim erreichen der Werte, die in den Registern OCR1A bzw OCR1B stehen, der TIMER1_COMPA-/TIMER1_COMPB-Interrupt ausgelöst. Wenn der Timer zusätzlich automatisch zurückgesetzt werden soll, sobalt der COMPA-Int eintrifft, muss man die das Bit WGM12 im TCCR1B setzten. Kleines Beispielprogramm, welches eine LED an PORTD.7 mit 0.5 Herz blinken lässt:

Code:
#include <avr/io.h>
#include <avr/interrupt.h>

ISR(TIMER1_COMPA_vect)
{
	PORTD^=(1<<7);
}

int main()
{
	DDRD|=(1<<7); //PD7 als Ausgang
	TCCR1B=(1<<CS10)|(1<<CS12)|(1<<WGM12); //Prescale = 1024, CTC 
	OCR1A=F_CPU/1024; //Jede Sekunde ein IRQ
	
	TIMSK|=(1<<OCIE1A); //Compare A Match Interrupt aktivieren
	
	sei(); //Interrupts aktivieren
	
	while(1); //Endlosschleife
}
MfG Mark