Forum: Mikrocontroller und Digitale Elektronik µC Wartezeit


von Bernd (Gast)


Lesenswert?

Hallo

habe hier einen kleinen quellcode den ich nicht so ganz verstehe

ISR(TIMER0_OVF_vect)

static uint16_t sekunden = 1000;

TCNT0= - 58;

if (--sekunden==0)

{
  sekunden = 1000;
  if(wartezeit)wartezeit--;
}

if bla bla bla
}


was macht dieses -- sekunden   under das wartezeit --

also die beiden unteschiedlichen minuszeichen?

Gruß

von Martin S. (tungl)


Lesenswert?


von HP (Gast)


Lesenswert?

Das --sekunden ist ein predecrement d.h. vor dem Vergleich auf 0 wird 
"sekunden" decrementiert.
Das wartezeit-- ist ein postdecrement das heißt nach der Operation wird 
decrementiert.

von Falk B. (falk)


Lesenswert?

@  Bernd (Gast)


>if (--sekunden==0)

Erst sekunden um 1 verringern, dann vergleichen.
{
>  sekunden = 1000;
>  if(wartezeit)wartezeit--;

Wartezeit um 1 verringern, nach der Operation. Hier es es aber egal, 
weil ausser dem Dekrement nichts weiter gemacht wird.

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.