Διακόπτης προφυλακτήρα#

Εισαγωγή#

Η κλάση bumper χρησιμοποιείται για την ανίχνευση του πότε πατιέται και απελευθερώνεται ο διακόπτης προφυλακτήρα.

Κατασκευαστής κλάσης#

bumper( 
  int32_t index );

Καταστροφέας κλάσης#

Καταστρέφει το αντικείμενο bumper και απελευθερώνει τους σχετικούς πόρους.

virtual ~bumper();

Παράμετροι#

Παράμετρος

Τύπος

Περιγραφή

index

int32_t

Η Έξυπνη Θύρα στην οποία είναι συνδεδεμένος ο Διακόπτης Προφυλακτήρα, γράφεται ως PORTx, όπου x είναι ο αριθμός θύρας (για παράδειγμα, PORT1).

Παράδειγμα#

// Create a bumper instance in Port 1
bumper Bumper1 = bumper(PORT1);

Συναρτήσεις Μελών#

Η κλάση bumper περιλαμβάνει τις ακόλουθες συναρτήσεις-μέλη:

  • pressing — Επιστρέφει εάν πατηθεί ο διακόπτης προφυλακτήρα.

  • pressed — Καταγράφει μια λειτουργία που θα κληθεί όταν πατηθεί ο διακόπτης προφυλακτήρα.

  • released — Καταγράφει μια συνάρτηση που θα κληθεί όταν απελευθερωθεί ο διακόπτης προφυλακτήρα.

Πριν από την κλήση οποιασδήποτε συνάρτησης μέλους bumper , πρέπει να δημιουργηθεί μια παρουσία bumper , όπως φαίνεται παρακάτω:

/* This constructor is required when using VS Code.
Bumper Switch configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a bumper instance in Port 1
bumper Bumper1 = bumper(PORT1);

pressing#

Επιστρέφει εάν ο διακόπτης προφυλακτήρα είναι πατημένος τη δεδομένη στιγμή.

Available Functions
int32_t pressing();

Parameters

Αυτή η συνάρτηση δεν δέχεται καμία παράμετρο.

Return Values

Επιστρέφει την τιμή int32_t που υποδεικνύει εάν πατιέται ο διακόπτης προφυλακτήρα.

  • 1 — Πιέζεται ο διακόπτης προφυλακτήρα.

  • 0 — Ο διακόπτης προφυλακτήρα δεν πατιέται.

pressed#

Καταγράφει μια λειτουργία που θα κληθεί όταν πατηθεί ο διακόπτης προφυλακτήρα.

Available Functions
void pressed( void (* callback)(void) );

Parameters

Παράμετρος

Τύπος

Περιγραφή

callback

void (*)(void)

Ένας δείκτης σε μια συνάρτηση που θα κληθεί όταν πατηθεί το κουμπί bumper. Η συνάρτηση δεν πρέπει να δέχεται παραμέτρους και να επιστρέφει void.

Return Values

Αυτή η συνάρτηση δεν επιστρέφει τιμή.

Examples

Ορίστε τη συνάρτηση επανάκλησης (εκτός από int main())

// Display a message when bumper is pressed
void BumperPressed() {
  Brain.Screen.print("Bumper pressed");
}

Καταχωρίστε την επανάκληση μέσα στο int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run BumperPressed when the value of the Bumper Switch is pressed.
  Bumper1.pressed(BumperPressed);
}

released#

Καταγράφει μια συνάρτηση που θα κληθεί όταν απελευθερωθεί ο διακόπτης προφυλακτήρα.

Available Functions
void released( void (* callback)(void) );

Parameters

Παράμετρος

Τύπος

Περιγραφή

callback

void (*)(void)

Ένας δείκτης σε μια συνάρτηση που θα κληθεί όταν απελευθερωθεί το bumper. Η συνάρτηση δεν πρέπει να δέχεται παραμέτρους και να επιστρέφει void.

Return Values

Αυτή η συνάρτηση δεν επιστρέφει τιμή.

Examples

Ορίστε τη συνάρτηση επανάκλησης (εκτός από int main())

// Display a message when bumper is released
void BumperReleased() {
  Brain.Screen.print("Bumper released");
}

Καταχωρίστε την επανάκληση μέσα στο int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run BumperReleased when the value of the Bumper Switch is released.
  Bumper1.released(BumperReleased);
}