Bumperschakelaar#
Invoering#
De bumper klasse wordt gebruikt met de Bumper Switch, een mechanische schakelaar die een circuit sluit wanneer deze wordt ingedrukt, waardoor de robot het indrukken en loslaten kan detecteren.

Klasseconstructor#
bumper(
triport::port &port );
Klasse-destructor#
Vernietigt het bumper object en geeft de bijbehorende resources vrij.
virtual ~bumper();
Parameters#
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
De 3-draads poort waarop de bumperschakelaar is aangesloten, wordt weergegeven als |
Voorbeeld#
// Create a bumper instance in Port A
bumper BumperA = bumper(Brain.ThreeWirePort.A);
Lidfuncties#
De klasse bumper omvat de volgende lidfuncties:
pressing— Geeft aan of de bumperschakelaar wordt ingedrukt.pressed— Registreert een functie die moet worden aangeroepen wanneer de bumperschakelaar wordt ingedrukt.released— Registreert een functie die moet worden aangeroepen wanneer de bumperschakelaar wordt losgelaten.
Voordat er lidfuncties van bumper worden aangeroepen, moet er een instantie bumper worden gemaakt, zoals hieronder weergegeven:
/* 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#
Geeft aan of de bumperschakelaar momenteel is ingedrukt. Dit kan worden gebruikt om te controleren of de robot tegen andere objecten aanbotst.
Available Functionsint32_t pressing();
Deze functie accepteert geen parameters.
Return ValuesGeeft een int32_t terug die aangeeft of de bumperschakelaar is ingedrukt.
1— De bumperschakelaar wordt ingedrukt.0— De bumperschakelaar wordt niet ingedrukt.
pressed#
Registreert een functie die moet worden aangeroepen wanneer de bumperschakelaar wordt ingedrukt.
Available Functionsvoid pressed( void (* callback)(void) );
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
Een verwijzing naar een functie die wordt aangeroepen wanneer de bumper wordt ingedrukt. |
Deze functie retourneert geen waarde.
ExamplesDefinieer de callbackfunctie (buiten
int main())// Display a message when bumper is pressed void BumperPressed() { Brain.Screen.print("Bumper pressed"); }Registreer de callback binnen
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#
Registreert een functie die moet worden aangeroepen wanneer de bumperschakelaar wordt losgelaten.
Available Functionsvoid released( void (* callback)(void) );
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
Een verwijzing naar een functie die wordt aangeroepen wanneer de bumper wordt losgelaten. |
Deze functie retourneert geen waarde.
ExamplesDefinieer de callbackfunctie (buiten
int main())// Display a message when bumper is released void BumperReleased() { Brain.Screen.print("Bumper released"); }Registreer de callback binnen
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); }