Arexx RP6 V2 Build your own robot kit RP6 V2 Manuale Utente
![Arexx](https://files.manualsbrain.com/attachments/7d5bfb0ba6ea5b2685c982333a7389b552ce0a09/common/fit/150/50/e2737ebddbd476d0e73a3bf82f6692f0e681a71c3e37eb574014e9811fb8/brand_logo.gif)
Codici prodotto
RP6 V2
RP6 ROBOT SYSTEM - 4. Programmierung des RP6
setStopwatchX(uint16_t preset)
Dieses Makro setzt Stopwatch X auf den übergebenen Wert.
Beispiel:
Beispiel:
setStopwatch1(2324);
setStopwatch2(0);
setStopwatch2(0);
setStopwatch3(2);
setStopwatch4(43456);
setStopwatch4(43456);
getStopwatchX()
Dieses Makro gibt den Wert von Stopwatch X zurück.
Beispiel:
Beispiel:
if(getStopwatch2() > 1000) { ... }
if(getStopwatch6() > 12324) { ... }
4.6.4. Status LEDs und Bumper
void setLEDs(uint8_t leds)
Die 6 Status LEDs können Sie mit dieser Funktion steuern. Am übersichtlichsten ist es,
der Funktion einen binären Wert zu übergeben (sieht immer so aus: 0bxxxxxx).
Beispiel:
Beispiel:
setLEDs(0b000000); // Dieser Befehl schaltet alle LEDs aus.
setLEDs(0b000001); // Und dieser schaltet StatusLED1 an und alle anderen aus.
setLEDs(0b000001); // Und dieser schaltet StatusLED1 an und alle anderen aus.
setLEDs(0b000010); // StatusLED2
setLEDs(0b000100); // StatusLED3
setLEDs(0b000100); // StatusLED3
setLEDs(0b001010); // StatusLED4 und StatusLED2
setLEDs(0b010111); // StatusLED5, StatusLED3, StatusLED2 und StatusLED1
setLEDs(0b010111); // StatusLED5, StatusLED3, StatusLED2 und StatusLED1
setLEDs(0b100000); // StatusLED6
Eine alternative Möglichkeit ist folgendes:
statusLEDs.LED5 = true; // LED5 im LED Register aktivieren
statusLEDs.LED2 = false; // LED2 im LED Register deaktivieren
statusLEDs.LED2 = false; // LED2 im LED Register deaktivieren
updateStatusLEDs();
// Änderungen übernehmen!
Hier wird die StatusLED5 angeschaltet und StatusLED2 ausgeschaltet. Die anderen
LEDs bleiben aber genau in dem Zustand in dem sie vorher gewesen sind! Das kann
nützlich/übersichtlicher sein, wenn verschiedene LEDs aus verschiedenen Funktionen
nützlich/übersichtlicher sein, wenn verschiedene LEDs aus verschiedenen Funktionen
heraus geändert werden sollen o.ä..
Achtung:
Achtung:
statusLEDs.LED5 = true;
schaltet NICHT direkt LED5 an! Es wird nur ein Bit
in einer Variablen gesetzt! Erst
updateStatusLEDs();
schaltet LED5 dann wirklich an!
Zwei der Portpins an denen die LEDs angeschlossen sind, werden zusätzlich für die
Bumper verwendet. Um die Bumper auszuwerten wird für sehr kurze Zeit der jeweilige
Portpin auf Eingangsrichtung umgeschaltet und ausgewertet ob der Schalter geschlos-
Portpin auf Eingangsrichtung umgeschaltet und ausgewertet ob der Schalter geschlos-
sen ist. Dazu gibt es zwei vorgefertigte Funktionen.
Diese Funktion
Diese Funktion
uint8_t getBumperLeft(void)
wertet den linken Bumper aus und diese
uint8_t getBumperRight(void)
den rechten Bumper.
- 87 -