ATmega32U4 Countdown

OP #4174234
Lesenswert?
• ▲
▼
Ich habe ein Problem mit meinem Programm. Das Ziel ist es, mit dem µC 
auf einem LCD einen Countdown zu machen. Startwert lässt sich mittels 
Taster einstellen und der Countdown lässt sich starten. Er zählt auch 
genau jede Sekunde runter...aber immer um 9 Werte. Bin mir sicher es ist 
ein billiger Fehler, aber ich komm einfach nicht drauf.
Hier der Programmausschnitt:

if((time-((time/100)*100))==0) //ersetzt Modulu (alle 100 mal OK)
{
sprintf(s,"%02d",start); //startwert wird formatiert in string 
geschrieben
lcd_string(s); //string wird am LCD ausgegeben(lcd-routines.h)
lcd_setcursor(6,2); //Position wird neu gesetzt
if(start>0) start--; //FEHLERHAFTE ZEILE
}

time...alle 10ms wird time von timer1 um 1 erhöht
start...Startwert, der im ext. Interrupt festgelegt wird. Danach im 
Programm nur in dem Programmausschnitt verwendet

Hab schon versucht time statt start auszugeben..100,200,300..und das 
alle Sekunden...sollte auch so sein. Es liegt ganz sicher an 'start--'

Bitte um Hilfe!
LG. Error404

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