Tach zusammen
Ich verzweifle noch:
Mein ASURO soll bei einem druck auf die rechten Taster rechts blinken, bei einm Druck auf die linken Taster links blinken, das klappt auch.
Jetzt soll er auch noch in die jeweilige Richtung fahren, doch jedesmal wenn ich die Motorsteuerung auch nur anfasse, egal an welcher Programmstelle, führt er immer das Programm für "rechts" aus, egal welchen Schalter ich drücke.... ich blaube ich
Das Programm unten zeigt den Blinker, sobald man die Kommentare an der Motorsteuerungentfernt spinnt dat Ding.
Thx for help
Code:
#include "asuro.h"
int main(void)
{
unsigned int x;
unsigned int y;
unsigned int Sw;
Sw = 0;
Init();
StatusLED(GREEN);
while(1)
{ Sw = PollSwitch(); //Taster prüfen
if(Sw>0){ //Wenn Taster, schaun wir mal
StatusLED(YELLOW);
if(Sw<8){ //rechte Seite
for(y = 0;y < 3;y++){ // drei mal blinken
BackLED(OFF,ON);
for(x = 0;x < 180;x++){Sleep(255);}
BackLED(OFF,OFF);
for(x = 0;x < 180;x++){Sleep(255);}
}
/*
// Hier ein wenig nach rechts
MotorDir(FWD,BREAK);
MotorSpeed(190,0);
for(x = 0;x < 180;x++){Sleep(255);}
// Beide Motoren marsch
MotorDir(FWD,FWD);
MotorSpeed(190,190);
*/
StatusLED(GREEN);
BackLED(OFF,OFF);
}
else if(Sw>4){ // linke seite
for(y = 0;y < 3;y++){ // drei mal blinken
BackLED(ON,OFF);
for(x = 0;x < 180;x++){Sleep(255);}
BackLED(OFF,OFF);
for(x = 0;x < 180;x++){Sleep(255);}
}
/*
// und ein wenig nach links
MotorDir(BREAK,FWD);
MotorSpeed(0,190);
for(x = 0;x < 180;x++){Sleep(255);}
// und geradeaus
MotorDir(FWD,FWD);
MotorSpeed(190,190);
*/
// Blinker aus
StatusLED(GREEN);
BackLED(OFF,OFF);
}
}
else{
}
StatusLED(GREEN);
BackLED(OFF,OFF);
Sw = 0;
}
return 0;
//return 0;
}
Lesezeichen