Végálláskapcsoló#

Bevezetés#

A limit osztályt a Limit Switch-kel együtt használják, amely egy kis digitális érzékelő, amely érzékeli a tárggyal való fizikai érintkezést.

A VEX V5 végálláskapcsoló.

Osztálykonstruktor#

limit(
  triport::port &port);

Osztálydestruktor#

Megsemmisíti a limit objektumot és felszabadítja a hozzá tartozó erőforrásokat.

virtual ~limit();

Paraméterek#

Paraméter

Típus

Leírás

port

triport::port &

A 3 vezetékes port, amelyhez a végálláskapcsoló csatlakozik, a következőképpen írva: Brain.ThreeWirePort.X vagy ExpanderName.X, ahol X a port betűjele (például Brain.ThreeWirePort.A vagy Expander1.A).

Példa#

// Create a limit instance in Port A
limit LimitSwitchA = limit(Brain.ThreeWirePort.A);

Tagfüggvények#

A limit osztály a következő tagfüggvényeket tartalmazza:

  • pressing – Visszaadja, hogy a végálláskapcsoló le van-e nyomva.

  • pressed – Regisztrál egy függvényt, amely a végálláskapcsoló megnyomásakor meghívódik.

  • released – Regisztrál egy függvényt, amely a végálláskapcsoló elengedésekor hívódik meg.

Bármely limit tagfüggvény meghívása előtt létre kell hozni egy limit példányt, az alábbiak szerint:

/* This constructor is required when using VS Code.
Limit Switch configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a limit instance in Port A
limit LimitSwitchA = limit(Brain.ThreeWirePort.A);

pressing#

Visszaadja, hogy a végálláskapcsoló jelenleg le van-e nyomva. Ez felhasználható annak ellenőrzésére, hogy a robot nekiütközik-e más tárgyaknak.

Available Functions
int32_t pressing();

Parameters

Ez a függvény nem fogad el paramétereket.

Return Values

int32_t értéket ad vissza, amely jelzi, hogy a végálláskapcsoló le van-e nyomva.

  • 1 — A végálláskapcsolót lenyomják.

  • 0 — A végálláskapcsoló nincs lenyomva.

pressed#

Regisztrál egy függvényt, amely a végálláskapcsoló megnyomásakor hívódik meg.

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

Parameters

Paraméter

Típus

Leírás

callback

void (*)(void)

Egy mutató egy függvényre, amely a végálláskapcsoló megnyomásakor hívódik meg.

Return Values

Ez a függvény nem ad vissza értéket.

Examples

Definiáljuk a visszahívó függvényt ( int main())

void switchPressed() {
  // The Brain will print that the Limit Switch was pressed
  // on the Brain's screen.
  Brain.Screen.print("switch pressed");
}

Regisztrálja a visszahívást a int main() függvényen belül.

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run switchPressed when the Limit Switch is pressed.
  LimitSwitchA.pressed(switchPressed);
}

released#

Regisztrál egy függvényt, amely meghívódik, amikor a végálláskapcsolót elengedik.

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

Parameters

Paraméter

Típus

Leírás

callback

void (*)(void)

Egy mutató egy függvényre, amely a végálláskapcsoló elengedésekor hívódik meg.

Return Values

Ez a függvény nem ad vissza értéket.

Examples

Definiáljuk a visszahívó függvényt ( int main())

void switchReleased() {
  // The Brain will print that the Limit Switch was released
  // on the Brain's screen.
  Brain.Screen.print("switch released");
}

Regisztrálja a visszahívást a int main() függvényen belül.

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run switchReleased when the Limit Switch is released.
  LimitSwitchA.released(switchReleased);
}