Mygtukas#
Įvadas#
button klasė yra kilusi iš brain bazinės klasės ir suteikia prieigą prie EXP Brain mygtukų, leisdama jūsų robotui aptikti, kada jo mygtukai yra paspaudžiami ir atleidžiami.
Prieiga#
button klasėje yra trys mygtuko objektai. Kiekvienas objektas yra button klasės egzempliorius ir prie jo galima prisijungti per smegenų egzempliorių.
Objektas |
Naudojimo pavyzdys |
Aprašymas |
|---|---|---|
|
|
Patikrinti mygtuką |
|
|
Kairysis mygtukas |
|
|
Dešinysis mygtukas |
Narių funkcijos#
button klasė apima šias narines funkcijas:
pressing— Grąžina, ar nurodytas mygtukas yra paspaudžiamas.pressed— Registruoja funkciją, kuri bus iškviečiama paspaudus nurodytą mygtuką.released— Registruoja funkciją, kuri bus iškviesta atleidus nurodytą mygtuką.
Prieš iškviečiant bet kokias button nario funkcijas, reikia sukurti brain egzempliorių, kaip parodyta žemiau:
// Create the EXP Brain
brain Brain = brain();
pressing#
Grąžina, ar šiuo metu paspaudžiamas konkretus smegenų mygtukas.
Available Functionsbool pressing() const;
Ši funkcija nepriima jokių parametrų.
Return ValuesGrąžina loginę reikšmę, nurodančią, ar nurodytas mygtukas yra paspaudžiamas:
true— Mygtukas yra paspaudžiamas.false— Mygtukas nespaudžiamas.
Šią funkciją galima iškviesti bet kuriame mygtuko objekte, pavyzdžiui:
Brain.buttonCheckBrain.buttonLeftBrain.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#
Registruoja atgalinio iškvietimo funkciją, kuri paleidžiama paspaudus konkretų smegenų mygtuką.
Available Functionsvoid pressed(
void (* callback)(void) ) const;
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Funkcija, kuri iškviečiama paspaudus nurodytą mygtuką. |
Ši funkcija negrąžina reikšmės.
ExamplesŠią funkciją galima iškviesti bet kuriame smegenų mygtuko objekte, pavyzdžiui:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Apibrėžkite grįžtamojo ryšio funkciją (už
int main())// Drive forward when the right button is pressed void driveForward() { Drivetrain.driveFor(forward, 100, mm); }Registruokite atgalinį iškvietimą
int main()vidujeint 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#
Registruoja atgalinio iškvietimo funkciją, kuri paleidžiama atleidus konkretų smegenų mygtuką.
Available Functionsvoid released(
void (* callback)(void) ) const;
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Funkcija, kuri iškviečiama atleidus nurodytą mygtuką. |
Ši funkcija negrąžina reikšmės.
ExamplesŠią funkciją galima iškviesti bet kuriame smegenų mygtuko objekte, pavyzdžiui:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Apibrėžkite grįžtamojo ryšio funkciją (už
int main())// Drive backward when the left button is released void backUp() { Drivetrain.driveFor(reverse, 100, mm); }Registruokite atgalinį iškvietimą
int main()vidujeint 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); }