Ich habe mir die Funktionen "Go" und "Turn" mal ein bisschen angesehen. ("Go" geht bei mir nicht ganz geradeaus, aber das kann durchaus am Umgebungslicht liegen. Gelegentlich muss ich es mal bei Dunkelheit probieren.)

Zwei Fragen habe ich zu "Go"
1. Wie weit fährt "Go" überhaupt ?
Egal was ich in "distance" übergebe: Asuro fährt bei mir endlos geradeaus ...
Anders gefragt, in welcher Einheit wird "distance" angegeben ? Oder dient es nur zur Angabe vorwärts bzw. rückwärts ?

2. Interrupts für Berührungsschalter ?
"Go" verwendet offenbar eine Interrupt-Steuerung für die Odometriewerte, die man dann der Variablen encoder[2] entnehmen kann.
Nun beschäftigt "Go" den Prozessor die ganze Zeit mit dem Geradehalten der Strecke (ständiges Abgleichen der Geschwindigkeiten) und prüft nicht, ob in der Zwischenzeit irgendwelche Schalter gedrückt sind.
Wenn man also annimmt, dass der Asuro während "Go" vor eine Wand laufen könnte, muss man eine Abfrage in die Funktion einbauen, oder einen weiteren Interrupt (zusätzlich zur Odometrie) verwenden.
Wie macht Ihr das ? Die Interrupt-Lösung ist die elegantere. Kann man überhaupt zwei Interrupts verwenden ? Falls ja - wie sieht ein Beispiel aus ?

Danke !