Forum: Compiler & IDEs Timer Problem Atmega128


von Marcus (Gast)


Lesenswert?

Ich habe ein kleines Problem mit der Timer Verarbeitung


hier mein Code


volatile short status;

void init_timer1()
{
TCCR0 |= (1<<CS00)|(1<<CS02);
 TIMSK = ( 1 << TOIE0 );         // Overflow Interrupt einschalten
 sei();

}


ISR( TIMER0_OVF_vect )
{

switch(counter)
{

case 3000:
if(status==1)
{
set_LED1();
}
break;
case 5000:
if (status==2)
{
set_LED2();
}
break;
}

counter++;
}


Wenn ich die If Anweisung weg nehme werden die LEDs gesetzt.

Es scheint als ob er die IF anweisung oder die Variable Status nicht
verarbeiten kann wie sollte man es richtig machen?

von Karl heinz B. (kbucheg)


Lesenswert?

Poste mal ein komplettes Programm. Insbesondere ist
interessant wie und wo status eigentlich seinen Wert
bekommt.

Aus dem Codeschnipsel da oben kann man nicht wirklich
irgendetwas ableiten.

Ach ja: Wenn du lieb bist, dann formatierst du deinen
Code vorher vernünftig.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.