Verhalten lokaler variabler in IRQ Routine.

Gast #1528080
Lesenswert?

Hallo,
stehe gerade auf dem Schlauch.
1
//Timer-IRQ
2
ISR(TIMER0_OVF)
3
{
4
  uint8_t tick;
5
  // 1,2 MHz / 256 = 4,687 => 5000 Durchgänge/s Prescaler 1024 => 5 Durchgänge/s
6
  if(++tick > 5)
7
  {
8
    timertick_s++;
9
    tick=0;
10
  }
11
}
Es geht einfach darum eine sehr ungenaue Sekunde mit einem Tiny13 
darzustellen.
Hintergrund ist eine Fensteransteuerung die die Fenster schließen soll 
wenn's regnet, also Sensor wird nass Tiny schaltet für ca. 10-15s Motor 
ein.
Kann ich jetzt in der ISR die lokale Variable stehen lassen oder muß die 
auch global und volatile wie timertick_s deklariert sein ?
Danke für die Aufklärung.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren