1. bitte nutze den CODE Button um deinen Programmcode zu posten.
2. Du Musst ein Programm machen, was ungefähr so aussieht:
Code:
int tastegedrueckt=0;
int main(void){
init();
While(1){

PollSwitch();
PollSwitch(); //Zum ausschliessen von falschen Werten
PollSwitch();

tastegedrueckt=PollSwitch();

if (tastegedrueckt!=0){ //Wenn eine Taste gedrückt wurde...

MotorDir(RWD,RWD);
MotorSpeed(150,150); //Dann fahre rückwärts.

}
else{ //ansonsten...
MotorDir(FWD,FWD);
MotorSpeed(150,150);
}

return 0;

}
könnte sein, dass da was nich ganz 100%ig ist, also erstmal durchchecken was der compiler so sagt.

Sowie eine taste gedrückt wurde, wird die variable tastegedrueckt nicht mehr 0 sein. (kann aber sein, dass die funktion pollswitch() einen falschen wert ausgibt, dann hast du leider pech...). wenn die variable nicht mehr 0 ist wird er rückwärts fahren. nachteil: er wird dauern wieder vor die wand fahren, weil sowie er ein stückchen rückwärts gefahren ist ist ja die variable wieder 0 und er fährt wieder vorwärts... man könnte natürlich auch noch eine verzögerung mit sleep() einbauen, aber das überlasse ich dir =)