Analoger Eingang#
Einführung#
Die Klasse `analog_in dient zum Einlesen analoger Eingangssignale von Geräten, die an einen VEX EXP 3-Wire-Port angeschlossen sind. Sie ermöglicht den Zugriff auf den aktuellen Analogwert und die Registrierung von Rückruffunktionen für Wertänderungen.
Klassenkonstruktoren#
analog_in(
triport::port &port );
Klassendestruktor#
Zerstört das analog_in Objekt und gibt die zugehörigen Ressourcen frei.
~analog_in();
Parameter#
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Der 3-Draht-Anschluss, an den der analoge Eingang angeschlossen ist, wird als |
Beispiel#
// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);
Mitgliedsfunktionen#
Die Klasse analog_in enthält die folgenden Memberfunktionen:
value— Gibt den Wert des Analog-Eingangsgeräts zurück.changed— Registriert eine Rückruffunktion, die aufgerufen wird, wenn sich der Wert des analogen Eingangs ändert.
Bevor Sie eine der Memberfunktionen vom Typ analog_in aufrufen, muss eine Instanz analog_in erstellt werden, wie unten gezeigt:
/* 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#
Gibt den aktuellen Wert des analogen Eingangs zurück.
Available Functionsint32_t value(
analogUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Einheit zur Darstellung des Wertes:
|
Diese Funktion gibt den aktuellen Wert des analogen Eingangs zurück.
Examples// Get the current value of the Analog Input
int32_t value = AnalogInA.value();
changed#
Registriert eine Rückruffunktion, die aufgerufen wird, wenn sich der Wert des analogen Eingangs ändert.
Available Functionsvoid changed( void (* callback)(void) );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Eine Funktion, die aufgerufen wird, wenn sich der Wert des analogen Eingangs ändert. |
Diese Funktion gibt keinen Wert zurück.
ExamplesDefiniere die Callback-Funktion (außerhalb von
int main())// Display a message when the input changes void AnalogInputChanged() { Brain.Screen.print("analog input changed"); }Registriere den Callback innerhalb von
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); }