Hallo,
ich habe ein kleines Problem mit dem Compare..
So weit, wie ich die TImer verstanden habe habe ich eine Clock sorce,
einen prescaler und eine compare Funktion um eine 1/32 tel sekunde zu
erzeugen.
Mein versuch:
Timer initalisieren:
// Clock 32768Hz an TOSc1 / 2
//Timer2 Initalisieren Interupt jede Sekunde Externer Uhrenquarz
ASSR = (1<<AS0); //Externer Takteingang
TCCR0 = (1<<CS01); //16 Sampels / Sekunde
OCR0 = 0x10; //Compare Register
TCNT0 = 0x00; //The Timer/Counter
TIMSK |= (1 << OCIE0);
Int handler:
SIGNAL (SIG_OUTPUT_COMPARE0)
{
temp_out = TCNT0;
temp++;
}
was ich nun nicht verstehe ist, dass ich immer auf 2 sekunden komme
(if (temp >= 31))
Aus irgend einem Grund loesst der compare nicht aus nur wieso??
Gast
#284245
Ahhh... er löscht bei einem int nicht gleichzeitig das TCNT0 Register.. muss ich das immer per hand machen??
Gast
#284246
CTC Mode verwenden.
Gast
#284247
Besten dank hat geklappt
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.