Bamperio jungiklis#

Įvadas#

bumper klasė naudojama aptikti, kada paspaudžiamas ir atleidžiamas buferio jungiklis.

Klasės konstruktorius#

bumper( 
  int32_t index );

Klasės destruktorius#

Sunaikina bumper objektą ir išlaisvina susijusius išteklius.

virtual ~bumper();

Parametrai#

Parametras

Tipas

Aprašymas

index

int32_t

Išmanusis prievadas, prie kurio prijungtas buferio jungiklis, užrašomas kaip PORTx, kur x yra prievado numeris (pavyzdžiui, PORT1).

Pavyzdys#

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

Narių funkcijos#

bumper klasė apima šias narines funkcijas:

  • pressing – Grąžina, jei paspaudžiamas buferio jungiklis.

  • pressed – Registruoja funkciją, kuri bus iškviečiama paspaudus buferio jungiklį.

  • released — Registruoja funkciją, kuri bus iškviesta atleidus buferio jungiklį.

Prieš iškviečiant bet kokias bumper narių funkcijas, reikia sukurti bumper egzempliorių, kaip parodyta žemiau:

/* 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#

Grąžina, jei šiuo metu paspaustas buferio jungiklis.

Available Functions
int32_t pressing();

Parameters

Ši funkcija nepriima jokių parametrų.

Return Values

Grąžina int32_t nurodantį, ar paspaudžiamas buferio jungiklis.

  • 1 — Paspaustas buferio jungiklis.

  • 0 — Nepaspaustas buferio jungiklis.

pressed#

Registruoja funkciją, kuri bus iškviečiama paspaudus buferio jungiklį.

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

Parameters

Parametras

Tipas

Aprašymas

callback

void (*)(void)

Rodyklė į funkciją, kuri bus iškviečiama paspaudus buferį. Funkcija negali priimti parametrų ir grąžinti void.

Return Values

Ši funkcija negrąžina reikšmės.

Examples

Apibrėžkite grįžtamojo ryšio funkciją (už int main())

// Display a message when bumper is pressed
void BumperPressed() {
  Brain.Screen.print("Bumper pressed");
}

Registruokite atgalinį iškvietimą int main() viduje

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#

Registruoja funkciją, kuri bus iškviečiama atleidus buferio jungiklį.

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

Parameters

Parametras

Tipas

Aprašymas

callback

void (*)(void)

Rodyklė į funkciją, kuri bus iškviečiama atleidus buferį. Funkcija negali priimti parametrų ir grąžinti void.

Return Values

Ši funkcija negrąžina reikšmės.

Examples

Apibrėžkite grįžtamojo ryšio funkciją (už int main())

// Display a message when bumper is released
void BumperReleased() {
  Brain.Screen.print("Bumper released");
}

Registruokite atgalinį iškvietimą int main() viduje

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);
}