ich hab auch mal ne frage
probier scon seit stunden an einem programm rum
normaerweise sollte dann der asuro linien folgen und kolisionen erkennen
aber es klappt nicht so wirklich
hier mal der code
Code:
#include "asuro.h"
int main(void){
Init();
StatusLED(RED);
SerWrite("HALLO-Los geht´s!!!",20);
unsigned int data[2]; //Speicher bereitstellen
Init();
FrontLED(ON); // Linienbeleuchtung einschalten
MotorDir(FWD,FWD); // Beide Motoren auf vorwärts
while(1){ // Endlosschleife, ASURO soll beliebig lang einer Linie nachfahren
LineData(data); // aktuelle Helligkeitswerte der Fototransistoren einlesen
if (data [0] > data [1] ) // links heller als rechts...
{MotorSpeed(200,150);} // ... dann links mehr Gas geben...
else
{MotorSpeed(150,200);} // ... sonst rechts mehr Gas geben!
void MotorFwd(void)
{
MotorDir(FWD,FWD);
MotorSpeed(150,150);
}
/* Motor rückwärts */
void MotorRwd(void)
{
MotorDir(RWD,RWD);
MotorSpeed(160,150);
}
/* Motor rückwärts Links */
void MotorRwdL(void)
{
MotorDir(RWD,FWD);
MotorSpeed(150,140);
}
/* Motor rückwärts Rechts */
void MotorRwdR(void)
{
MotorDir(FWD,RWD);
MotorSpeed(140,150);
}
/* Motor stop */
void MotorStop(void)
{
MotorSpeed(0,0);
}
{
unsigned char t1, t2;
Init();
while(1)
{
t1 = PollSwitch();
t2 = PollSwitch();
if(t1 == 0 && t2 == 0) /* keine Taste */
{
MotorFwd(); /* vorwärts fahren */
FrontLED(ON);
BackLED(OFF,OFF);
}
else if (t1 && t2 && t1 == t2)
{
MotorStop();
if(t1 & 0x07) /* Tasten links gedrückt? */
{
MotorRwdL(); /* Rückwärtskurve links fahren */
FrontLED(OFF);
BackLED(ON,OFF);
}
if (t1 & 0x38) /* Tasten rechts gedrückt? */
{
MotorRwdR(); /* Rückwärtskurve rechts fahren */
FrontLED(OFF);
BackLED(OFF,ON);
}
Msleep(1000); /* 1 Sekunde fahren */
return 0;
}
}
}
}
}
hab meinen asuro seit gestern
danke
Lesezeichen