Hallo Liggi,
danke für die Antwort. Ich habe den Code jetzt folgendermaßen abgeändert:
War anscheinend nichts, der ASURO fährt jetzt schnurgeradeaus - hab ich's falsch gemacht?Code:#include "asuro.h" #define SPEED 150 int main(void) { LineDemo(); return 0; } int speedLeft,speedRight; unsigned int lineData[2]; int ADOffset; void LineLeft (void) { speedLeft += 1; if (speedLeft > 150) speedLeft = 151; } void LineRight (void) { speedRight += 1; if (speedRight > 150) speedRight = 151; } void LineDemo(void) { int i; unsigned char j; Init(); FrontLED(ON); for (j = 0; j < 255; j++) LineData(lineData); LineData(lineData); ADOffset = lineData[0] - lineData[1]; speedLeft = speedRight = SPEED; for(;;) { LineData(lineData); i = (lineData[0] - lineData[1]) - ADOffset; if ( i > 4) { StatusLED(GREEN); LineLeft(); } else if ( i < -4) { StatusLED(RED); LineRight(); } else { StatusLED(OFF); speedLeft = speedRight = SPEED; } MotorSpeed(speedLeft,speedRight); } }







Zitieren

Lesezeichen