Bumperschakelaar#

Invoering#

De bumper klasse wordt gebruikt om te detecteren wanneer de bumperschakelaar wordt ingedrukt en losgelaten.

Klasseconstructor#

bumper( 
  int32_t index );

Klasse-destructor#

Vernietigt het bumper object en geeft de bijbehorende resources vrij.

virtual ~bumper();

Parameters#

Parameter

Type

Beschrijving

index

int32_t

De Smart Port waarop de Bumper Switch is aangesloten, wordt weergegeven als PORTx, waarbij x het poortnummer is (bijvoorbeeld PORT1).

Voorbeeld#

// Create a bumper instance in Port 1
bumper Bumper1 = bumper(PORT1);

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 1
bumper Bumper1 = bumper(PORT1);

pressing#

Geeft een retourwaarde als de bumperschakelaar momenteel is ingedrukt.

Available Functions
int32_t pressing();

Parameters

Deze functie accepteert geen parameters.

Return Values

Geeft 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 Functions
void pressed( void (* callback)(void) );

Parameters

Parameter

Type

Beschrijving

callback

void (*)(void)

Een pointer naar een functie die wordt aangeroepen wanneer de bumper wordt ingedrukt. De functie mag geen parameters accepteren en moet void retourneren.

Return Values

Deze functie retourneert geen waarde.

Examples

Definieer 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.
  Bumper1.pressed(BumperPressed);
}

released#

Registreert een functie die moet worden aangeroepen wanneer de bumperschakelaar wordt losgelaten.

Available Functions
void released( void (* callback)(void) );

Parameters

Parameter

Type

Beschrijving

callback

void (*)(void)

Een pointer naar een functie die wordt aangeroepen wanneer de bumper wordt losgelaten. De functie mag geen parameters accepteren en moet void retourneren.

Return Values

Deze functie retourneert geen waarde.

Examples

Definieer 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.
  Bumper1.released(BumperReleased);
}