Ich denke mal das Problem ist, dass Du in der switch-Anweisung die Variable agrobot mit neuen Werten belegst. agrobot bekommt seinen Wert doch von der Interrupt-Routine, und die switch-Anweisung soll nur die passende Funktion aufrufen, oder?
Dann müsste die Hauptschleife so aussehen:
Code:
while(1) //Hauptschleife
{
//Aufgabe/Funktion abfragen
switch ( agrobot )
{
case MENU_error: error(); //Fehlerausgabe
break;
case MENU_menu: menu(); //Menü
break;
//...weitere Menüpunkte
case MENU_backevade: backevade(agrobot2); //Rückwärts ausweichen
break;
case MENU_frontevade: frontevade(agrobot2); //Vorwärts ausweichen
break;
}
}//Hauptschleife
Lesezeichen