Αναλογική είσοδος#
Εισαγωγή#
Η κλάση analog_in χρησιμοποιείται για την ανάγνωση αναλογικών σημάτων εισόδου από συσκευές που είναι συνδεδεμένες σε μια θύρα VEX EXP 3-Wire. Παρέχει πρόσβαση στην τρέχουσα αναλογική τιμή και επιτρέπει την καταχώριση συναρτήσεων επανάκλησης για αλλαγές τιμών.
Κατασκευαστές κλάσεων#
analog_in(
triport::port &port );
Καταστροφέας κλάσης#
Καταστρέφει το αντικείμενο analog_in και απελευθερώνει τους σχετικούς πόρους.
~analog_in();
Παράμετροι#
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η θύρα 3 καλωδίων στην οποία είναι συνδεδεμένη η αναλογική είσοδος, γραμμένη ως |
Παράδειγμα#
// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);
Συναρτήσεις Μελών#
Η κλάση analog_in περιλαμβάνει τις ακόλουθες συναρτήσεις-μέλη:
value— Επιστρέφει την τιμή της συσκευής αναλογικής εισόδου.changed— Καταγράφει μια συνάρτηση επανάκλησης για όταν αλλάζει η τιμή της αναλογικής εισόδου.
Πριν από την κλήση οποιασδήποτε συνάρτησης μέλους analog_in , πρέπει να δημιουργηθεί μια παρουσία analog_in , όπως φαίνεται παρακάτω:
/* This constructor is required to use an
Analog Input device. Replace the values
as needed. */
// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);
value#
Επιστρέφει την τρέχουσα τιμή της αναλογικής εισόδου.
Available Functionsint32_t value(
analogUnits units );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η μονάδα που αντιπροσωπεύει την τιμή:
|
Αυτή η συνάρτηση επιστρέφει την τρέχουσα τιμή της αναλογικής εισόδου.
Examples// Get the current value of the Analog Input
int32_t value = AnalogInA.value();
changed#
Καταγράφει μια συνάρτηση επανάκλησης που θα κληθεί όταν αλλάξει η τιμή της αναλογικής εισόδου.
Available Functionsvoid changed( void (* callback)(void) );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Μια συνάρτηση που θα καλείται όταν αλλάζει η τιμή της αναλογικής εισόδου. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
ExamplesΟρίστε τη συνάρτηση επανάκλησης (εκτός από
int main())// Display a message when the input changes void AnalogInputChanged() { Brain.Screen.print("analog input changed"); }Καταχωρίστε την επανάκληση μέσα στο
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Run AnalogInputChanged when the value of the // Analog Input changes AnalogInA.changed(AnalogInputChanged); }