Hallo Merlin321,
zu Deiner Frage am Anfang dieses Posts:
Hier die Initialisierung für eine 100kHz ISR mit Timer1 (M32):
Code:
#define F_TIMER1 100000 // Timer 1 frequency (100kHz)
cli();
// Timer 1: Normal port operation, mode 4 (CTC), clk/8
TCCR1A = (0 << COM1A1)
| (0 << COM1A0)
| (0 << COM1B1)
| (0 << COM1B0)
| (0 << FOC1A)
| (0 << FOC1B)
| (0 << WGM11)
| (0 << WGM10);
TCCR1B = (0 << ICNC1)
| (0 << ICES1)
| (0 << WGM13)
| (1 << WGM12)
| (0 << CS12)
| (1 << CS11)
| (0 << CS10);
OCR1A = ((F_CPU/8/F_TIMER1)-1); // 19 at 100kHz
Als ISR nimmst du den TIMER1_COMPA_vect.
Gruß Dirk
Lesezeichen