Διακόπτης ορίου#
Εισαγωγή#
Η κλάση limit χρησιμοποιείται με τον διακόπτη ορίου, έναν μικρό ψηφιακό αισθητήρα που ανιχνεύει φυσική επαφή με ένα αντικείμενο.

Κατασκευαστής κλάσης#
limit(
triport::port &port);
Καταστροφέας κλάσης#
Καταστρέφει το αντικείμενο limit και απελευθερώνει τους σχετικούς πόρους.
virtual ~limit();
Παράμετροι#
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η θύρα 3 καλωδίων στην οποία είναι συνδεδεμένος ο διακόπτης ορίου, γραμμένη ως |
Παράδειγμα#
// Create a limit instance in Port A
limit LimitSwitchA = limit(Brain.ThreeWirePort.A);
Συναρτήσεις Μελών#
Η κλάση limit περιλαμβάνει τις ακόλουθες συναρτήσεις-μέλη:
pressing– Επιστρέφει εάν πατιέται ο διακόπτης ορίου.pressed– Καταγράφει μια συνάρτηση που θα καλείται κάθε φορά που πατιέται ο διακόπτης ορίου.released– Καταχωρεί μια συνάρτηση που θα καλείται κάθε φορά που απελευθερώνεται ο διακόπτης ορίου.
Πριν από την κλήση οποιασδήποτε συνάρτησης μέλους limit , πρέπει να δημιουργηθεί μια παρουσία limit , όπως φαίνεται παρακάτω:
/* 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#
Επιστρέφει εάν ο διακόπτης ορίου είναι πατημένος τη δεδομένη στιγμή. Αυτό μπορεί να χρησιμοποιηθεί για να ελεγχθεί εάν το ρομπότ προσκρούει σε άλλα αντικείμενα.
Available Functionsint32_t pressing();
Αυτή η συνάρτηση δεν δέχεται καμία παράμετρο.
Return ValuesΕπιστρέφει την τιμή int32_t που υποδεικνύει εάν πατιέται ο διακόπτης ορίου.
1— Ο διακόπτης ορίου είναι πατημένος.0— Ο διακόπτης ορίου δεν πατιέται.
pressed#
Καταγράφει μια συνάρτηση που θα κληθεί όταν πατηθεί ο διακόπτης ορίου.
Available Functionsvoid pressed(
void (* callback)(void) );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Ένας δείκτης σε μια συνάρτηση που θα καλείται όταν πατηθεί ο διακόπτης ορίου. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
ExamplesΟρίστε τη συνάρτηση επανάκλησης (εκτός από
int main())void switchPressed() { // The Brain will print that the Limit Switch was pressed // on the Brain's screen. Brain.Screen.print("switch pressed"); }Καταχωρίστε την επανάκληση μέσα στο
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#
Καταχωρεί μια συνάρτηση που θα κληθεί όταν απελευθερωθεί ο διακόπτης ορίου.
Available Functionsvoid released(
void (* callback)(void) );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Ένας δείκτης σε μια συνάρτηση που θα κληθεί όταν απελευθερωθεί ο διακόπτης ορίου. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
ExamplesΟρίστε τη συνάρτηση επανάκλησης (εκτός από
int main())void switchReleased() { // The Brain will print that the Limit Switch was released // on the Brain's screen. Brain.Screen.print("switch released"); }Καταχωρίστε την επανάκληση μέσα στο
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); }