Gehirn#
Einführung#
In VEX V5 C++ wird das Gehirn durch die Klasse brain repräsentiert. Sie erstellen ein Gehirnobjekt (oder verwenden das standardmäßig vom Projekt bereitgestellte) und greifen dann über dessen Memberobjekte auf die Gehirnfunktionen zu.
Abgeleitete Klassen#
Die Klasse brain dient als Basisklasse für die folgenden abgeleiteten Klassen:
Screen- Diese Klasse ermöglicht den Zugriff auf den eingebauten Farb-Touchscreen des Gehirns und erlaubt es Programmen, Text und Grafiken anzuzeigen sowie Berührungseingaben zu empfangen.Timer- Diese Klasse bietet hochauflösende Zeitmessfunktionen zum Messen der verstrichenen Zeit und zum Steuern des zeitbasierten Verhaltens in Programmen.Battery- Diese Klasse ermöglicht es Programmen, den Batteriestatus des Gehirns zu überwachen, einschließlich Spannung, Stromstärke, Kapazität und Temperatur.ThreeWirePort(triport/ 3-Wire Port) - Diese Klasse ermöglicht den Zugriff auf die 3-Wire-Anschlüsse des Brains zum Anschluss und zur Steuerung älterer Sensoren und Geräte wie Endschalter, Potentiometer und LEDs.SDcard- Diese Klasse ermöglicht das Lesen und Schreiben auf die SD-Karte des Brains zum Speichern von Dateien, zur Datenprotokollierung und zum Laden externer Ressourcen.
Klassenkonstruktoren#
brain();
Parameter#
Der Konstruktor brain verwendet keine Parameter.
Anmerkungen#
In einem Projekt sollte nur ein einziges
brainObjekt erstellt werden.
Beispiel#
// Create the V5 Brain
brain Brain = brain();
Mitgliedsfunktionen#
Die Klasse brain umfasst die folgenden Memberfunktionen:
programStop- Stoppt das aktuell laufende Projekt auf dem V5 Brain.timer- Gibt den aktuellen Wert des internen Timers des Gehirns in den angegebenen Einheiten zurück.resetTimer- Setzt den internen Timer des Gehirns auf Null zurück und startet die Zeitmessung neu.setTimer- Setzt den internen Timer des Gehirns auf einen bestimmten Wert und eine bestimmte Zeiteinheit.
Bevor Funktionen des Typs brain aufgerufen werden können, muss eine Instanz des Typs brain erstellt werden, wie unten dargestellt:
// Create the V5 Brain
brain Brain = brain();
Programmstopp#
Stoppt das aktuell laufende Projekt auf dem V5 Brain.
Available Functionsvoid programStop();
Diese Funktion akzeptiert keine Parameter.
Return ValuesDiese Funktion gibt keinen Wert zurück.
Examples// Stop the project when the Brain screen is pressed
while (true) {
if (Brain.Screen.pressing()) {
Brain.programStop();
}
wait(20, msec);
}
Timer#
Gibt den aktuellen Wert des internen Timers des Gehirns in den angegebenen Einheiten zurück.
Available Functionsdouble timer(
timeUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Zeiteinheit für die Rückkehr:
|
Gibt einen Wert vom Typ double zurück, der die seit dem Programmstart verstrichene Zeit in den angegebenen Einheiten darstellt.
Der Timer startet automatisch, sobald das Projekt beginnt.
Der Timer kann mit
resetTimerzurückgesetzt werden.
// Stop the project after 3 seconds
while (Brain.timer(seconds) < 3) {
wait(20, msec);
}
Brain.programStop();
Timer zurücksetzen#
Setzt den internen Timer des Gehirns auf Null zurück. Anschließend beginnt der Timer sofort wieder von Null hochzuzählen.
Available Functionsvoid resetTimer();
Diese Funktion akzeptiert keine Parameter.
Return ValuesDiese Funktion gibt keinen Wert zurück.
NotesDer Timer beginnt unmittelbar nach dem Zurücksetzen wieder zu zählen.
Der Aufruf von
resetTimerbeeinflusst den Wert, der von nachfolgenden Aufrufen vontimerzurückgegeben wird.
// Reset the timer and measure elapsed time
Brain.resetTimer();
while (Brain.timer(sec) < 5) {
wait(20, msec);
}
// 5 seconds have elapsed since reset
Brain.Screen.print("5 seconds passed");
setTimer#
Stellt den internen Timer des Gehirns auf einen bestimmten Wert und eine bestimmte Zeiteinheit ein.
Available Functionsvoid setTimer(
double value,
timeUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Zeit, auf die der Timer eingestellt werden soll, basierend auf den |
|
|
The unit used to interpret the
|
Diese Funktion gibt keinen Wert zurück.
NotesDer Timer zählt nach dem Einstellen weiter vorwärts.
Der Aufruf von
setTimerändert sofort den vontimerzurückgegebenen Wert.
// Set the timer to start at 10 seconds
Brain.setTimer(10, sec);
// Wait until the timer is at 3 seconds
while (Brain.timer(sec) < 3) {
wait(20, msec);
}
// 5 seconds have elapsed since setTimer was called
Brain.Screen.print("5 seconds passed");