
Zitat von
papa_moll
Bei mir funktioniert das letzte Problem überhaupt nicht der Asuro fährt nur rückwärts im Kreis und nach ca 5 Runden fängt die Status-LED an gelb zu flackern was bedeutet das denn???
Mir ist eben noch ein Einfall gekommen!
Wenn du statt mit der StatusLED die Richtung mit den BackLEDs anzeigst, weißt du, ob das gelbe Flackern der StatusLED von der IF-Abfrage herkam.
Bei mir leuchtet die StatusLED bei folgendem Programm während der gesamten Zeit grün:
Code:
#include "asuro.h"
int main(void)
{
int i;
Init();
while(1)
{
if (PollSwitch()>0) // wenn einer der Taster betätigt
{ // dann...
BackLED(OFF,ON);
MotorDir(RWD,RWD);
MotorSpeed(100,150); //rückwärts wenden(mit großem Wendekreis)
for(i=0;i<1500;i++) // 3s
{Sleep(144);}
}
else //ansonsten...
{
MotorSpeed(0,0);
MotorDir(BREAK,BREAK); //Das englische wort für bremse heisst zwar brake... aber egal =)
Sleep(216); //3ms
MotorDir(FWD,FWD);
MotorSpeed(120,120); //geradeaus fahren
BackLED(ON,OFF);
}
for(i=0;i<10;i++) // 30ms warten, damit er nicht durcheinander kommt
Sleep(216);
}
return(0);
}
Lesezeichen