Ψηφιακή είσοδος#
Εισαγωγή#
Η κλάση digital_in επιτρέπει στον εγκέφαλο EXP να διαβάζει ένα ψηφιακό σήμα από μια εξωτερική πηγή, όπως έναν διακόπτη ή έναν αισθητήρα. Ανιχνεύει εάν η γραμμή εισόδου είναι υψηλή, λαμβάνοντας 5 βολτ, ή χαμηλή, λαμβάνοντας 0 βολτ. Αυτό μπορεί να χρησιμοποιηθεί για τον προσδιορισμό καταστάσεων ενεργοποίησης/απενεργοποίησης ή την ενεργοποίηση συμβάντων σε ένα έργο.
Κατασκευαστές κλάσεων#
digital_in(
triport::port &port );
Καταστροφέας κλάσης#
Καταστρέφει το αντικείμενο digital_in και απελευθερώνει τους σχετικούς πόρους.
~digital_in();
Παράμετροι#
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η θύρα 3 καλωδίων στην οποία είναι συνδεδεμένη η συσκευή ψηφιακής εισόδου, γραμμένη ως |
Παράδειγμα#
// Create the digital_in instance on 3-Wire Port A
digital_in digin = digital_in(Brain.ThreeWirePort.A);
Συναρτήσεις Μελών#
Η κλάση digital_in περιλαμβάνει τις ακόλουθες συναρτήσεις-μέλη:
value— Επιστρέφει εάν η θύρα ψηφιακής εισόδου λαμβάνει υψηλό ή χαμηλό σήμα.high— Καταγράφει μια συνάρτηση που θα καλείται κάθε φορά που η συσκευή Digital In στέλνει ένα υψηλό σήμα.low— Καταγράφει μια συνάρτηση που θα καλείται κάθε φορά που η συσκευή ψηφιακής εισόδου στέλνει χαμηλό σήμα.
Πριν από την κλήση οποιασδήποτε συνάρτησης μέλους digital_in , πρέπει να δημιουργηθεί μια παρουσία digital_in , όπως φαίνεται παρακάτω:
/* This constructor is required when using VS Code.
Digital input configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create the digital_in instance on 3-Wire Port A
digital_in DigitalInA = digital_in(Brain.ThreeWirePort.A);
value#
Επιστρέφει εάν η θύρα ψηφιακής εισόδου λαμβάνει υψηλό ή χαμηλό σήμα.
Διαθέσιμες Λειτουργίες
int32_t value();
Παράμετροι
Αυτή η συνάρτηση δεν δέχεται καμία παράμετρο.
Επιστρεφόμενες τιμές
Επιστρέφει μια τιμή int32_t που αντιπροσωπεύει την τρέχουσα κατάσταση του ψηφιακού σήματος:
1– Η θύρα ψηφιακής εισόδου λαμβάνει υψηλό σήμα (περίπου 5V).0– Η θύρα ψηφιακής εισόδου λαμβάνει χαμηλό σήμα (περίπου 0V).
high#
Καταγράφει μια λειτουργία που θα καλείται κάθε φορά που η συσκευή Digital In στέλνει υψηλό σήμα (περίπου 5V).
Available Functionsvoid high(
void (* callback)(void) );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Μια συνάρτηση που θα καλείται όταν η είσοδος είναι υψηλή. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
ExamplesΟρίστε τη συνάρτηση επανάκλησης (εκτός από
int main())// Display that the input is high void inputHigh() { Brain.Screen.print("digital input high"); }Καταχωρίστε την επανάκληση μέσα στο
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Run inputHigh when the Digital Input is high DigitalInA.high(inputHigh); }
low#
Καταγράφει μια λειτουργία που θα καλείται κάθε φορά που η συσκευή ψηφιακής εισόδου στέλνει χαμηλό σήμα (περίπου 0V).
Available Functionsvoid low(
void (* callback)(void) );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Μια συνάρτηση που θα καλείται όταν η είσοδος είναι χαμηλή. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
ExamplesΟρίστε τη συνάρτηση επανάκλησης (εκτός από
int main())// Display that the input is low void inputLow() { Brain.Screen.print("digital input low"); }Καταχωρίστε την επανάκληση μέσα στο
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Run inputLow when the Digital Input is low DigitalInA.low(inputLow); }