Tlačítko#

Zavedení#

Třída button je odvozena od základní třídy brain a poskytuje přístup k tlačítkům EXP Brain, což umožňuje robotovi detekovat, kdy jsou jeho tlačítka stisknuta a uvolněna.

Přístup#

Třída button nabízí tři objekty button. Každý objekt je instancí třídy button a je přístupný prostřednictvím instance brain.

Objekt

Příklad použití

Popis

buttonCheck

Brain.buttonCheck.pressing()

Zaškrtávací tlačítko

buttonLeft

Brain.buttonLeft.pressing()

Levé tlačítko

buttonRight

Brain.buttonRight.pressing()

Pravé tlačítko

Členské funkce#

Třída button obsahuje následující členské funkce:

  • pressing — Vrátí, zda je stisknuto zadané tlačítko.

  • pressed — Zaregistruje funkci, která se má volat při stisknutí zadaného tlačítka.

  • released — Registruje funkci, která se má volat při uvolnění zadaného tlačítka.

Před voláním jakékoli členské funkce button musí být vytvořena instance brain , jak je znázorněno níže:

// Create the EXP Brain
brain Brain = brain();

pressing#

Vrací, zda je aktuálně stisknuto konkrétní tlačítko mozku.

Available Functions
bool pressing() const;

Parameters

Tato funkce nepřijímá žádné parametry.

Return Values

Vrací booleovskou hodnotu označující, zda je stisknuto zadané tlačítko:

  • true — Tlačítko je stisknuto.

  • false — Tlačítko není stisknuto.

Examples

Tuto funkci lze volat na libovolném objektu tlačítka, například:

  • Brain.buttonCheck
  • Brain.buttonLeft
  • Brain.buttonRight
// Turn right while the check button is pressed
while (true) {
    if (Brain.buttonCheck.pressing()) {
        Drivetrain.turn(right);
    } else {
        Drivetrain.stop();
    }
    wait(5, msec);
}

pressed#

Zaregistruje funkci zpětného volání, která se spustí při stisknutí konkrétního tlačítka v mozku.

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

Parameters

Parametr

Typ

Popis

callback

void (*)(void)

Funkce, která se volá při stisknutí zadaného tlačítka.

Return Values

Tato funkce nevrací hodnotu.

Examples

Tuto funkci lze volat na libovolný objekt mozkového tlačítka, například:

  • Brain.buttonCheck
  • Brain.buttonLeft
  • Brain.buttonRight

Definujte callback funkci (mimo int main())

// Drive forward when the right button is pressed
void driveForward() {
    Drivetrain.driveFor(forward, 100, mm);
}

Zaregistrujte zpětné volání uvnitř int main()

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

  // Call driveForward when the right button is pressed
  Brain.buttonRight.pressed(driveForward);
}

released#

Zaregistruje funkci zpětného volání, která se spustí při uvolnění konkrétního tlačítka mozku.

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

Parameters

Parametr

Typ

Popis

callback

void (*)(void)

Funkce, která se volá při uvolnění zadaného tlačítka.

Return Values

Tato funkce nevrací hodnotu.

Examples

Tuto funkci lze volat na libovolný objekt mozkového tlačítka, například:

  • Brain.buttonCheck
  • Brain.buttonLeft
  • Brain.buttonRight

Definujte callback funkci (mimo int main())

// Drive backward when the left button is released
void backUp() {
    Drivetrain.driveFor(reverse, 100, mm);
}

Zaregistrujte zpětné volání uvnitř int main()

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

  // Call backUp when the left button is released
  Brain.buttonLeft.released(backUp);
}