-
Quadrat fahren!!
Hallo,
ich habe mir den asuro gekauft und erfolgreich gelötet!!
der selftest ging auch am anfang sehr gut
ich habe mein erstes"programm" so gemacht das ich die LED´s ansteuer
jetz wollte ich das der asuro ein quadrat fährt !!
das programm zeigt an 2 fehler ich weiss aba nich welche könnt ihr mir da helfen?
Code:
#include "asuro.h"
int main(void)
{
Init();
unsigned char left_speed
unsigned char right_speed
int i;
while(1);
{
else
MotorDir(RWD,RWD);
MotorSpeed(203,200);
for (i = 0;i< 800;i++)
Sleep(255);
}
else if
{
MotorDir(RWD,FWD);
MotorSpeed(200,200)
for (i= 0;i<200;i++)
Sleep(255);
}
else if
{
MotorDir(RWD,RWD);
MotorSpeed(203,200);
for (i = 0;i< 800;i++)
Sleep(255);
}
else if
{
MotorDir(RWD,FWD);
MotorSpeed(200,200)
for (i= 0;i<200;i++)
Sleep(255);
}
else
{
MotorDir(RWD,RWD);
MotorSpeed(203,200);
for (i = 0;i< 800;i++)
Sleep(255);
}
else
{
MotorDir(RWD,FWD);
MotorSpeed(200,200)
for (i= 0;i<200;i++)
Sleep(255);
}
else if
{
MotorDir(RWD,RWD);
MotorSpeed(203,200);
for (i = 0;i< 800;i++)
Sleep(255);
}
}
return 0;
}
mfg bilal
-
Hallo bilal, willkommen im Forum.
Vielleicht funktioniert es so:
Code:
#include "asuro.h"
int main(void)
{
Init();
int i;
while(1)
{
{
MotorDir(RWD,RWD);
MotorSpeed(203,200);
for (i = 0;i< 800;i++)
Sleep(255);
}
{
MotorDir(RWD,FWD);
MotorSpeed(200,200);
for (i= 0;i<200;i++)
Sleep(255);
}
{
MotorDir(RWD,RWD);
MotorSpeed(203,200);
for (i = 0;i< 800;i++)
Sleep(255);
}
{
MotorDir(RWD,FWD);
MotorSpeed(200,200);
for (i= 0;i<200;i++)
Sleep(255);
}
{
MotorDir(RWD,RWD);
MotorSpeed(203,200);
for (i = 0;i< 800;i++)
Sleep(255);
}
{
MotorDir(RWD,FWD);
MotorSpeed(200,200);
for (i= 0;i<200;i++)
Sleep(255);
}
{
MotorDir(RWD,RWD);
MotorSpeed(203,200);
for (i = 0;i< 800;i++)
Sleep(255);
}
}
return 0;
Die else-Konstruktionen habe ich entfernt. Ein ; fehlte am Ende eines MotorSpeed(). Diesen Fehler hast du in mehrere Zeilen kopiert. Schreibe und teste erst einen Block und wenn der läuft, kannst du in vervielfältigen.
Gruß
mic
-
danke aber der zeigt mir jetz noch mehr fehler an ich habe ein bisschen was geändert aber der fährt kein quadrat sondern geradeaus dann dreht er und fährt weiter irgendwo hin hier is mal der code
#include "asuro.h"
int main(void)
{
Init();
int i;
{
BackLED(ON,ON);
MotorDir(RWD,RWD);
MotorSpeed(103,100);
for (i = 0;i< 800;i++)
{
Sleep(255);
MotorDir(RWD,FWD);
MotorSpeed(100,100);
}
for (i= 0;i<200;i++)
{
Sleep(255);
MotorDir(RWD,RWD);
MotorSpeed(103,100);
}
for (i = 0;i< 800;i++)
{
Sleep(255);
MotorDir(RWD,FWD);
MotorSpeed(100,100);
}
for (i= 0;i<200;i++)
{
Sleep(255);
MotorDir(RWD,RWD);
MotorSpeed(103,100);
}
for (i = 0;i< 800;i++)
{
Sleep(255);
MotorDir(RWD,FWD);
MotorSpeed(100,100);
}
for (i= 0;i<200;i++)
{
Sleep(255);
MotorDir(RWD,RWD);
MotorSpeed(103,100);
}
for (i = 0;i< 800;i++)
{
Sleep(255);
}
while(1);
return 0;
}
}
-
das problem ist folgendes:
variablendeklarationen (int i; usw.) müssen VOR Init(); stehen.
int main(void)
{
int i;
Init();
...
-
-
-
Kannst du die Fehler kopieren?
Also in welcher Zeile, welcher Fehler vorkommt.
auch bitte [ code ] Tags verwenden.
-
genau. poste deinen aktuellen code mit den code buttons, und dann poste auch die fehlerausgabe.
-
ich habs hinbekommen :D
hier der code
Code:
#include "asuro.h"
int main(void)
{
int i;
Init();
while(1)
{
for (i = 0;i< 500;i++)
{
BackLED(ON,ON);
MotorDir(RWD,RWD);
MotorSpeed(202,200);
Sleep(255);
}
for (i = 0;i<150;i++)
{
MotorDir(RWD,FWD);
MotorSpeed(123,100);
Sleep(255);
}
}
return 0;
}
ich hab überlegt ich brauch ya nur geradeaus und umdrehen dann hab ich das in die while schleife gebunden und siehe es geht :D
gruß
-
Ist zwar OK so, ich hätte es aber anders gemacht:
Code:
#include "asuro.h"
int main(void)
{
int i;
Init();
BackLED(ON,ON);
while(1)
{
MotorDir(RWD,RWD);
MotorSpeed(202,200);
for (i = 0;i< 500;i++)
{
Sleep(255);
}
MotorDir(RWD,FWD);
MotorSpeed(123,100);
for (i = 0;i<150;i++)
{
Sleep(255);
}
}
return 0;
}