StatusLED(GREEN);
MotorDir(FWD,FWD);
if (spd<255) {
spd++;
}
else {
spd = 1;
}
MotorSpeed(spd, spd);
Und das funktioniert? Bei 8MHz jagt spd auf 255 und startet dann wieder bei 1?

Diese verschachtelten PollSwitch() sind doch Unsinn! Wirklich richtig ist nur das mehrfache Einlesen und Vergleichen der Tastenwerte:

Code:
unsigned char t1,t2;
t1=PollSwitch();
t2=PollSwitch();
if ((t1 == t2) && ( t1 > 0)) {
msleep(1500); //1,5 sekunden rückwärts
Wir sollten für Einsteiger erstmal bei der orginalen Library bleiben:

unsigned int i;
for(i=0; i<500; i++) Sleep(72); // 1/2 Sekunde Verzögerung

Gruß

mic