Taste#
Einführung#
Die Klasse button ist von der Basisklasse brain abgeleitet und ermöglicht den Zugriff auf die Tasten des IQ (1. Generation) Gehirns, sodass Ihr Roboter die Betätigungen der Tasten des Gehirns überwachen kann.
Zugang#
The brain class provides twelve button objects. Each object is an instance of the button class and can be accessed through a brain instance.
Objekt |
Anwendungsbeispiel |
Beschreibung |
|---|---|---|
|
|
Kontrollkästchen |
|
|
Linke Taste |
|
|
Rechte Taste |
Anmerkungen#
Das Objekt
buttonwird vom Gehirn bereitgestellt. Es wird nicht direkt konstruiert.
Mitgliedsfunktionen#
Die Klasse Button enthält die folgenden Memberfunktionen:
pressed— Registriert eine Funktion, die aufgerufen werden soll, wenn die angegebene Taste gedrückt wird.released— Registriert eine Funktion, die aufgerufen werden soll, wenn die angegebene Taste losgelassen wird.pressing— Gibt zurück, ob die angegebene Taste gedrückt wird.
Bevor Sie eine der Memberfunktionen button aufrufen, muss eine brain Instanz erstellt werden, wie unten gezeigt:
// Create a brain instance
brain();
pressed#
Registriert eine Callback-Funktion, die ausgeführt wird, wenn ein bestimmter „Hirnknopf“ gedrückt wird.
Available Functionsvoid pressed(
void (* callback)(void) ) const;
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Eine Funktion, die aufgerufen wird, wenn die angegebene Taste gedrückt wird. |
Diese Funktion gibt keinen Wert zurück.
ExamplesDiese Funktion kann für jedes beliebige Brain-Button-Objekt aufgerufen werden, zum Beispiel:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Definiere die Callback-Funktion (außerhalb von
int main())// Drive forward when check is pressed void driveForward() { Drivetrain.driveFor(forward, 100, mm); }Registriere den Callback innerhalb von
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Call driveForward when the check button is pressed Brain.buttonCheck.pressed(driveForward); }
released#
Registriert eine Callback-Funktion, die ausgeführt wird, wenn eine bestimmte Gehirntaste losgelassen wird.
Available Functionsvoid released(
void (* callback)(void) ) const;
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Eine Funktion, die aufgerufen wird, wenn die angegebene Taste losgelassen wird. |
Diese Funktion gibt keinen Wert zurück.
ExamplesDiese Funktion kann für jedes beliebige Brain-Button-Objekt aufgerufen werden, zum Beispiel:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Definiere die Callback-Funktion (außerhalb von
int main())// Drive backward when the left button is released void backUp() { Drivetrain.driveFor(reverse, 100, mm); }Registriere den Callback innerhalb von
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Call backUp when the left button is released Brain.buttonLeft.released(backUp); }
pressing#
Gibt zurück, ob ein bestimmter Gehirnknopf gerade gedrückt wird.
Available Functionsbool pressing() const;
Diese Funktion akzeptiert keine Parameter.
Return ValuesGibt einen booleschen Wert zurück, der angibt, ob die angegebene Taste gedrückt wird:
true— Der Knopf wird gedrückt.false— Der Knopf wird nicht gedrückt.
Diese Funktion kann für jedes beliebige Brain-Button-Objekt aufgerufen werden, zum Beispiel:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
// Turn right while right is pressed
while (true) {
if (Brain.buttonRight.pressing()) {
Drivetrain.turn(right);
} else {
Drivetrain.stop();
}
wait(5, msec);
}