Interrupteur de fin de course#
Introduction#
La classe limit est utilisée avec le capteur de fin de course, un petit capteur numérique qui détecte le contact physique avec un objet.

Constructeur de classe#
limit(
triport::port &port);
Destructeur de classe#
Détruit l’objet limit et libère les ressources associées.
virtual ~limit();
Paramètres#
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Le port à 3 fils auquel le commutateur de fin de course est connecté, écrit comme |
Exemple#
// Create a limit instance in Port A
limit LimitSwitchA = limit(Brain.ThreeWirePort.A);
Fonctions des membres#
La classe limit comprend les fonctions membres suivantes :
pressing– Renvoie si le commutateur de fin de course est enfoncé.pressed– Enregistre une fonction à appeler chaque fois que le commutateur de fin de course est pressé.released– Enregistre une fonction à appeler chaque fois que le commutateur de fin de course est libéré.
Avant d’appeler une quelconque fonction membre limit , une instance limit doit être créée, comme indiqué ci-dessous :
/* 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#
Indique si le contacteur de fin de course est actuellement actionné. Cela permet de vérifier si le robot entre en collision avec d’autres objets.
Available Functionsint32_t pressing();
Cette fonction n’accepte aucun paramètre.
Return ValuesRenvoie un int32_t indiquant si le commutateur de fin de course est enfoncé.
1— Le contacteur de fin de course est enfoncé.0— Le contacteur de fin de course n’est pas actionné.
pressed#
Enregistre une fonction qui sera appelée lorsque le contacteur de fin de course est enfoncé.
Available Functionsvoid pressed(
void (* callback)(void) );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Un pointeur vers une fonction qui sera appelée lorsque le bouton de fin de course sera enfoncé. |
Cette fonction ne renvoie aucune valeur.
ExamplesDéfinissez la fonction de rappel (en dehors de
int main())void switchPressed() { // The Brain will print that the Limit Switch was pressed // on the Brain's screen. Brain.Screen.print("switch pressed"); }Enregistrez le rappel à l’intérieur de
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#
Enregistre une fonction qui sera appelée lorsque le contacteur de fin de course est relâché.
Available Functionsvoid released(
void (* callback)(void) );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Un pointeur vers une fonction qui sera appelée lorsque le contacteur de fin de course sera relâché. |
Cette fonction ne renvoie aucune valeur.
ExamplesDéfinissez la fonction de rappel (en dehors de
int main())void switchReleased() { // The Brain will print that the Limit Switch was released // on the Brain's screen. Brain.Screen.print("switch released"); }Enregistrez le rappel à l’intérieur de
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); }