Wejście analogowe#

Wstęp#

Klasa analog_in służy do odczytu analogowych sygnałów wejściowych z urządzeń podłączonych do portu VEX V5 3-Wire. Zapewnia dostęp do bieżącej wartości analogowej i umożliwia rejestrację funkcji wywołania zwrotnego dla zmian wartości.

Konstruktory klas#

analog_in(
    triport::port &port );

Destruktor klasy#

Niszczy obiekt analog_in analog_in i zwalnia powiązane zasoby.

~analog_in();

Parametry#

Parametr

Typ

Opis

port

triport::port&

Port 3-żyłowy, do którego podłączone jest wejście analogowe, zapisany jako Brain.ThreeWirePort.X lub ExpanderName.X, gdzie X to litera portu (na przykład Brain.ThreeWirePort.A lub Expander1.A).

Przykład#

// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);

Funkcje członkowskie#

Klasa analog_in analog_in zawiera następujące funkcje członkowskie:

  • wartośćvalue — Zwraca wartość urządzenia wejściowego analogowego.

  • changed — Rejestruje funkcję wywołania zwrotnego na wypadek zmiany wartości wejścia analogowego.

Przed wywołaniem jakiejkolwiek funkcji członkowskiej analog_in analog_in należy utworzyć instancję analog_in analog_in , jak pokazano poniżej:

/* 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#

Zwraca bieżącą wartość wejścia analogowego.

Available Functions
int32_t value(
  analogUnits units );

Parameters

Parametr

Typ

Opis

units

analogUnits

Jednostka reprezentująca wartość:

  • range8bit — 8-bitowa wartość analogowa (wartość z 256 możliwymi stanami)
  • range10bit — 10-bitowa wartość analogowa (wartość z 1024 możliwymi stanami)
  • range12bit — 12-bitowa wartość analogowa (wartość z 4096 możliwymi stanami)
  • pct — procent
  • mV — miliwolty

Return Values

Funkcja ta zwraca aktualną wartość wejścia analogowego.

Examples
// Get the current value of the Analog Input
int32_t value = AnalogInA.value();

changed#

Rejestruje funkcję wywołania zwrotnego, która ma zostać wywołana, gdy zmieni się wartość sygnału analogowego.

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

Parameters

Parametr

Typ

Opis

callback

void (* callback)(void)

Funkcja, która zostanie wywołana, gdy zmieni się wartość sygnału analogowego.

Return Values

Ta funkcja nie zwraca wartości.

Examples

Zdefiniuj funkcję wywołania zwrotnego (poza int main())

// Display a message when the input changes
void AnalogInputChanged() {
  Brain.Screen.print("analog input changed");
}

Zarejestruj wywołanie zwrotne wewnątrz 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);
}