julli1202
09.03.2012, 18:46
Hallo liebe Community,
ich steh noch ziemlich am Anfang der C Programmierung...
Hab mich jetz mal an einem Programm versucht, dass ASURO solange geradeaus fahren lässt, bis der Untergrund um 20 dunkler wird, als der eingelesene Wert...
Dann soll er mit voller Kraft zurückfahren, ein stück nach Rechts drehen und dann wieder gerade aus.
Hier mal der Code:
#include "asuro.h"
int main(void)
{
FrontLED(ON); //Front LED an
unsigned int Data2;
LineData(Data2);
int STOP = Data2-20; //STOP wert Berechnen
while(1)
{
unsigned int lineData[2];
LineData(lineData);
while (((lineData[0] < STOP) && (lineData[1] < STOP)) || ((lineData[0]+lineData[1]) < (2*STOP))) //solange bis der eingelesene wert dunkler wird als STOP
{
MotorDir(FWD,FWD);
MotorSpeed(180,180);
BackLED(ON,ON);
}
MotorDir(RWD,RWD);
MotorSpeed(255,255);
BackLED(ON,ON);
Msleep(5000);
MotorSpeed(180,0);
Msleep(2000);
MotorSpeed(0,0);
}
return 0;
}
Es lässt sich fehlerfrei kompolieren, jedoch tut asuro gar nichts, nichtmal die frontLED geht an?!
Kann sich das mal jemand anschauen?
Hab schon im forum gesucht, aber keine lösung im forum gefunden -.-
ich steh noch ziemlich am Anfang der C Programmierung...
Hab mich jetz mal an einem Programm versucht, dass ASURO solange geradeaus fahren lässt, bis der Untergrund um 20 dunkler wird, als der eingelesene Wert...
Dann soll er mit voller Kraft zurückfahren, ein stück nach Rechts drehen und dann wieder gerade aus.
Hier mal der Code:
#include "asuro.h"
int main(void)
{
FrontLED(ON); //Front LED an
unsigned int Data2;
LineData(Data2);
int STOP = Data2-20; //STOP wert Berechnen
while(1)
{
unsigned int lineData[2];
LineData(lineData);
while (((lineData[0] < STOP) && (lineData[1] < STOP)) || ((lineData[0]+lineData[1]) < (2*STOP))) //solange bis der eingelesene wert dunkler wird als STOP
{
MotorDir(FWD,FWD);
MotorSpeed(180,180);
BackLED(ON,ON);
}
MotorDir(RWD,RWD);
MotorSpeed(255,255);
BackLED(ON,ON);
Msleep(5000);
MotorSpeed(180,0);
Msleep(2000);
MotorSpeed(0,0);
}
return 0;
}
Es lässt sich fehlerfrei kompolieren, jedoch tut asuro gar nichts, nichtmal die frontLED geht an?!
Kann sich das mal jemand anschauen?
Hab schon im forum gesucht, aber keine lösung im forum gefunden -.-