Przełącznik zderzaka#
Wstęp#
Klasa zderzaka bumper jest używana z przełącznikiem zderzakowym, mechanicznym przełącznikiem, który zamyka obwód po naciśnięciu, umożliwiając robotowi wykrywanie naciśnięć i zwolnień.

Konstruktor klasy#
bumper(
triport::port &port );
Destruktor klasy#
Niszczy obiekt zderzaka bumper i uwalnia powiązane zasoby.
virtual ~bumper();
Parametry#
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Port 3-żyłowy, do którego podłączony jest przełącznik zderzakowy, zapisany jako |
Przykład#
// Create a bumper instance in Port A
bumper BumperA = bumper(Brain.ThreeWirePort.A);
Funkcje członkowskie#
Klasa zderzaka bumper zawiera następujące funkcje członkowskie:
pressing— Zwraca informację, czy przełącznik zderzaka jest naciśnięty.naciśnięto
pressed— rejestruje funkcję, która ma zostać wywołana po naciśnięciu przełącznika zderzaka.released— Rejestruje funkcję, która ma zostać wywołana po zwolnieniu przełącznika zderzaka.
Przed wywołaniem jakiejkolwiek funkcji członkowskiej zderzaka bumper należy utworzyć instancję zderzaka bumper , jak pokazano poniżej:
/* This constructor is required when using VS Code.
Bumper Switch configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a bumper instance in Port A
bumper BumperA = bumper(Brain.ThreeWirePort.A);
pressing#
Zwraca informację, czy przełącznik zderzaka jest aktualnie wciśnięty. Można tego użyć do sprawdzenia, czy robot uderza w inne obiekty.
Available Functionsint32_t pressing();
Ta funkcja nie przyjmuje żadnych parametrów.
Return ValuesZwraca wartość int32_t wskazującą, czy przełącznik zderzakowy jest wciśnięty.
1— Naciśnięto przełącznik zderzaka.0— Przełącznik zderzaka nie jest wciśnięty.
pressed#
Rejestruje funkcję, która ma zostać wywołana po naciśnięciu przełącznika zderzakowego.
Available Functionsvoid pressed( void (* callback)(void) );
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Wskaźnik do funkcji, która zostanie wywołana po naciśnięciu zderzaka. |
Ta funkcja nie zwraca wartości.
ExamplesZdefiniuj funkcję wywołania zwrotnego (poza
int main())// Display a message when bumper is pressed void BumperPressed() { Brain.Screen.print("Bumper pressed"); }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(); // Run BumperPressed when the value of the Bumper Switch is pressed. BumperA.pressed(BumperPressed); }
released#
Rejestruje funkcję, która ma zostać wywołana po zwolnieniu przełącznika zderzakowego.
Available Functionsvoid released( void (* callback)(void) );
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Wskaźnik do funkcji, która zostanie wywołana po zwolnieniu zderzaka. |
Ta funkcja nie zwraca wartości.
ExamplesZdefiniuj funkcję wywołania zwrotnego (poza
int main())// Display a message when bumper is released void BumperReleased() { Brain.Screen.print("Bumper released"); }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(); // Run BumperReleased when the value of the Bumper Switch is released. BumperA.released(BumperReleased); }