Przycisk#
Wstęp#
Klasa przycisku button pochodzi z klasy bazowej brain i zapewnia dostęp do przycisków EXP Brain, umożliwiając robotowi wykrywanie, kiedy jego przyciski są naciskane i zwalniane.
Dostęp#
Klasa przycisku button udostępnia trzy obiekty przycisków. Każdy obiekt jest instancją klasy przycisku button i można uzyskać do niego dostęp za pośrednictwem instancji Brain.
Obiekt |
Przykładowe użycie |
Opis |
|---|---|---|
|
|
Przycisk wyboru |
|
|
Lewy przycisk |
|
|
Prawy przycisk |
Funkcje członkowskie#
Klasa przycisku button zawiera następujące funkcje członkowskie:
pressing— Zwraca informację, czy określony przycisk jest naciśnięty.naciśnięto
pressed— Rejestruje funkcję, która ma zostać wywołana po naciśnięciu określonego przycisku.released— Rejestruje funkcję, która ma zostać wywołana po zwolnieniu określonego przycisku.
Przed wywołaniem jakiejkolwiek funkcji członkowskiej przycisku button należy utworzyć instancję mózgu brain , jak pokazano poniżej:
// Create the EXP Brain
brain Brain = brain();
pressing#
Zwraca informację, czy konkretny przycisk mózgu jest aktualnie wciśnięty.
Available Functionsbool pressing() const;
Ta funkcja nie przyjmuje żadnych parametrów.
Return ValuesZwraca wartość logiczną wskazującą, czy określony przycisk jest wciśnięty:
true— Przycisk jest wciśnięty.false— Przycisk nie jest wciśnięty.
Tę funkcję można wywołać dla dowolnego obiektu przycisku, na przykład:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
// Turn right while the check button is pressed
while (true) {
if (Brain.buttonCheck.pressing()) {
Drivetrain.turn(right);
} else {
Drivetrain.stop();
}
wait(5, msec);
}
pressed#
Rejestruje funkcję wywołania zwrotnego, która jest uruchamiana po naciśnięciu określonego przycisku mózgu.
Available Functionsvoid pressed(
void (* callback)(void) ) const;
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Funkcja wywoływana po naciśnięciu określonego przycisku. |
Ta funkcja nie zwraca wartości.
ExamplesTę funkcję można wywołać dla dowolnego obiektu przycisku mózgowego, na przykład:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Zdefiniuj funkcję wywołania zwrotnego (poza
int main())// Drive forward when the right button is pressed void driveForward() { Drivetrain.driveFor(forward, 100, mm); }Zarejestruj wywołanie zwrotne wewnątrz
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Call driveForward when the right button is pressed Brain.buttonRight.pressed(driveForward); }
released#
Rejestruje funkcję wywołania zwrotnego, która jest uruchamiana po zwolnieniu określonego przycisku mózgu.
Available Functionsvoid released(
void (* callback)(void) ) const;
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Funkcja wywoływana po zwolnieniu określonego przycisku. |
Ta funkcja nie zwraca wartości.
ExamplesTę funkcję można wywołać dla dowolnego obiektu przycisku mózgowego, na przykład:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Zdefiniuj funkcję wywołania zwrotnego (poza
int main())// Drive backward when the left button is released void backUp() { Drivetrain.driveFor(reverse, 100, mm); }Zarejestruj wywołanie zwrotne wewnątrz
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); }