Gomb#
Bevezetés#
A button osztály az brain alaposztályból származik, és hozzáférést biztosít az IQ (2. generációs) Brain gombjaihoz, lehetővé téve a robot számára, hogy figyelje az agy gombjainak lenyomását.
Hozzáférés#
A brain osztály tizenkét gomb objektumot biztosít. Minden objektum a button osztály egy példánya, és egy brain példányon keresztül érhető el.
Objektum |
Példahasználat |
Leírás |
|---|---|---|
|
|
Ellenőrzés gomb |
|
|
Bal gomb |
|
|
Jobb gomb |
Megjegyzések#
A
buttonobjektumot az agy biztosítja. Nem közvetlenül konstruálódik.
Tagfüggvények#
A Button osztály a következő tagfüggvényeket tartalmazza:
pressed— Regisztrál egy függvényt, amely a megadott gomb megnyomásakor hívódik meg.released— Regisztrál egy függvényt, amely a megadott gomb elengedésekor hívódik meg.pressing— Visszaadja, hogy a megadott gomb megnyomás alatt van-e.
Bármely button tagfüggvény meghívása előtt létre kell hozni egy brain példányt, az alábbiak szerint:
// Create a brain instance
brain();
pressed#
Egy visszahívó függvényt regisztrál, amely egy adott agygomb megnyomásakor fut le.
Available Functionsvoid pressed(
void (* callback)(void) ) const;
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Egy függvény, amely akkor hívódik meg, amikor a megadott gombot megnyomják. |
Ez a függvény nem ad vissza értéket.
ExamplesEz a függvény bármely agygomb objektumon meghívható, például:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Definiáljuk a visszahívó függvényt (
int main())// Drive forward when check is pressed void driveForward() { Drivetrain.driveFor(forward, 100, mm); }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(); // Call driveForward when the check button is pressed Brain.buttonCheck.pressed(driveForward); }
released#
Egy visszahívó függvényt regisztrál, amely egy adott agygomb elengedésekor fut le.
Available Functionsvoid released(
void (* callback)(void) ) const;
Paraméterek#
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Egy függvény, amely akkor hívódik meg, amikor a megadott gombot elengedjük. |
Ez a függvény nem ad vissza értéket.
ExamplesEz a függvény bármely agygomb objektumon meghívható, például:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Definiáljuk a visszahívó függvényt (
int main())// Drive backward when the left button is released void backUp() { Drivetrain.driveFor(reverse, 100, mm); }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(); // Call backUp when the left button is released Brain.buttonLeft.released(backUp); }
pressing#
Visszaadja, hogy egy adott agygombot jelenleg lenyomva tartunk-e.
Available Functionsbool pressing() const;
Ez a függvény nem fogad el paramétereket.
Return ValuesEgy logikai értéket ad vissza, amely jelzi, hogy a megadott gomb megnyomásra kerül-e:
true— A gombot megnyomják.false— A gombot nem nyomják meg.
Ez a függvény bármely agygomb objektumon meghívható, például:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
// Turn right while right is pressed
while (true) {
if (Brain.buttonRight.pressing()) {
Drivetrain.turn(right);
} else {
Drivetrain.stop();
}
wait(5, msec);
}