Hallo
Hier mal mein Ansatz:
	Code:
	/*  asuro fährt nach Anstoss einstellbare Zeit zurueck
    mic 3.1.2007
*/
#include <asuro.h>
unsigned long zurueckzeit; // Zeit Rueckwaerts in Millisekunden
unsigned char sw;          // Zwischenspeicher für Schalter k1-k6
int main(void) {
    Init();
    zurueckzeit=0;         // vorwärts losfahren
    MotorDir(FWD,FWD);
    MotorSpeed(150,150);
/*  Achtung! Das funzt nur wenn die Taster richtig erkannt werden,
    sonst bleibt der asuro auf freier Strecke stehen!
*/
do {
    sw=PollSwitch();  // Schalter einlesen und für eine Runde speichern
    if (!zurueckzeit && ((sw==2) || (sw==16))) {
    zurueckzeit=Gettime()+1000; // Aktuelle Zeit plus x millisek. zurueck
    MotorSpeed(0,0);
    MotorDir(RWD,RWD);   // Bei unterschiedlichen Geschwindigkeiten
    MotorSpeed(100,100);  // dreht der asuro beim Zurueckfahren ;-) 
    }
    if (zurueckzeit && (Gettime() > zurueckzeit)) { // Lange genug zurueck?
    MotorSpeed(0,0);
    MotorDir(FWD,FWD);    
    MotorSpeed(150,150);
    zurueckzeit=0;
    }
    }while (1); // mainloop (Endlosschleife)
    return 0;
}
 (Ich werte hier nur zwei Taster aus wegen der Störimpulse der Mots)
@AxelZ: Ich denke, dass asuro-Buch wäre für dich das Richtige
Gruß
mic
						
					
Lesezeichen