Rajakytkin#
Johdanto#
limit luokkaa käytetään rajakytkimen kanssa. Rajakytkin on pieni digitaalinen anturi, joka havaitsee fyysisen kosketuksen esineeseen.

Luokan rakentaja#
limit(
triport::port &port);
Luokan tuhoaja#
Tuhoaa limit -objektin ja vapauttaa siihen liittyvät resurssit.
virtual ~limit();
Parametrit#
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
3-johtiminen portti, johon rajakytkin on kytketty, kirjoitetaan muodossa |
Esimerkki#
// Create a limit instance in Port A
limit LimitSwitchA = limit(Brain.ThreeWirePort.A);
Jäsenten toiminnot#
limit -luokka sisältää seuraavat jäsenfunktiot:
pressing– Palauttaa, painetaanko rajakytkintä.pressed– Rekisteröi toiminnon, joka kutsutaan aina, kun rajakytkintä painetaan.released– Rekisteröi funktion, jota kutsutaan aina, kun rajakytkin vapautetaan.
Ennen minkään limit -jäsenfunktion kutsumista on luotava limit -instanssi alla olevan mukaisesti:
/* 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#
Palauttaa tiedon siitä, painetaanko rajakytkintä parhaillaan. Tätä voidaan käyttää tarkistamaan, törmääkö robotti muihin esineisiin.
Available Functionsint32_t pressing();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa arvon int32_t , joka ilmaisee, painetaanko rajakytkintä.
1— Rajakytkintä painetaan.0— Rajakytkintä ei paineta.
pressed#
Rekisteröi toiminnon, joka kutsutaan, kun rajakytkintä painetaan.
Available Functionsvoid pressed(
void (* callback)(void) );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Osoitin funktioon, jota kutsutaan, kun rajakytkintä painetaan. |
Tämä funktio ei palauta arvoa.
ExamplesMäärittele takaisinkutsufunktio (
int main())void switchPressed() { // The Brain will print that the Limit Switch was pressed // on the Brain's screen. Brain.Screen.print("switch pressed"); }Rekisteröi takaisinkutsu
int main()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#
Rekisteröi funktion, joka kutsutaan, kun rajakytkin vapautetaan.
Available Functionsvoid released(
void (* callback)(void) );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Osoitin funktioon, jota kutsutaan, kun rajakytkin vapautetaan. |
Tämä funktio ei palauta arvoa.
ExamplesMäärittele takaisinkutsufunktio (
int main())void switchReleased() { // The Brain will print that the Limit Switch was released // on the Brain's screen. Brain.Screen.print("switch released"); }Rekisteröi takaisinkutsu
int main()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); }