"Außer zwei berechtigten Warnungen kann ich das fehlerfrei übersetzen"
Ja, bei mir geht's (das Kompilieren), auch wenn es keine Beine hat. Der Ansatz, jeweils abzuwarten, bis je einmal high und einmal low erreicht wurde, erscheint mir übrigends auch richtig:
Code:
#include "asuro.h"
int main(void)
{
Init();
int i,h=0,d=0;
unsigned int dataO[2];
int umdrehungen=0, uebergaenge=0;
char dataSR[3];
SerRead(dataSR,3,0);
SerWrite("geht klar!\n",11);
// Viereck
for(i=0;i<4;i++)
{
// gradeaus
while(umdrehungen<3)
{
MotorDir(FWD,FWD);
MotorSpeed(120,125);
OdometrieData(dataO);
if(dataO[1]<300){d=1;}
if(dataO[1]>600){h=1;}
if(h==1 && d==1)
{
uebergaenge++;
h=0;
d=0;
}
if(uebergaenge==66)
{
umdrehungen++;
uebergaenge=0;
}
}
}
while(1);
return 0;
}
Lesezeichen