Danke für die schnelle Antwort also ich hab das mal angewendet ... also die Do schleife in Klammern aber irgendwie will er immernoch nicht ... der code schaut jetzt so aus ... ich hab außerdem die MSleep kleiner gemacht und die backlight nur in der while schleife angemacht... Letztendlich fährt er immernoch gerade aus ... Und ich renn schon nicht die ganze Zeit quer durch die Wohnung
P.S Die Stoppwerte hab ich nochmal runtergesetzt ....
Code:
int main(void)
{
Init();
unsigned int lineData[2], STOP[2]; // Stopwert seitenabhängig verwalten
FrontLED(ON); // Front LED an
Sleep(10); //
LineData(lineData); //
LineData(lineData);
STOP[0] = lineData[0]+10; // STOP wert Berechnen (links)
STOP[1] = lineData[1]+10; // STOP wert Berechnen (rechts)
while(1)
{
MotorDir(FWD,FWD); // vorwärts
MotorSpeed(180,180);
BackLED(OFF,OFF);
Msleep(200);
do{
LineData(lineData);
}
while ((lineData[0] > STOP[0]) && (lineData[1] > STOP[1])); //solange bis der eingelesene wert heller wird als STOP
Msleep(200);
MotorDir(BREAK,BREAK);
MotorSpeed(0,0);
BackLED(ON,ON);
}
return 0;
}
Genau fast hätt ichs vergessen die zweifachen Stop werte sind zur sicherheit da er mal beim vergleichen welche falsch eingelesen hat...
Viele Grüße Juli
Lesezeichen