Analógico em#

Introdução#

A classe `analog_in ) é utilizada para ler sinais de entrada analógicos de dispositivos ligados a uma porta VEX EXP de 3 fios. Fornece acesso ao valor analógico atual e permite o registo de funções de retorno de chamada para alterações de valor.

Construtores de Classes#

analog_in(
    triport::port &port );

Destrutor de classes#

Destrói o objeto analog_in ) e liberta os recursos associados.

~analog_in();

Parâmetros#

Parâmetro

Tipo

Descrição

port

triport::port&

A porta de 3 fios à qual a entrada analógica está ligada, escrita como Brain.ThreeWirePort.X ou ExpanderName.X, em que X é a letra da porta (por exemplo, Brain.ThreeWirePort.A ou Expander1.A).

Exemplo#

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

Funções de membro#

A classe `analog_in analog_in 1) inclui as seguintes funções membro:

  • value — Devolve o valor do dispositivo de entrada analógica.

  • changed — Regista uma função de retorno de chamada para quando o valor de entrada analógica é alterado.

Antes de chamar qualquer função membro de analog_in analog_in , deve ser criada uma instância de analog_in ( analog_in , como se mostra abaixo:

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

Retorna o valor atual da entrada analógica.

Available Functions
int32_t value(
  analogUnits units );

Parameters

Parâmetro

Tipo

Descrição

units

analogUnits

A unidade para representar o valor:

  • range8bit — valor analógico de 8 bits (um valor com 256 estados possíveis)
  • range10bit — valor analógico de 10 bits (um valor com 1024 estados possíveis)
  • range12bit — valor analógico de 12 bits (um valor com 4096 estados possíveis)
  • pct — percentagem
  • mV — milivolts

Return Values

Esta função devolve o valor atual da entrada analógica.

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

changed#

Regista uma função de retorno de chamada para ser invocada quando o valor da entrada analógica é alterado.

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

Parameters

Parâmetro

Tipo

Descrição

callback

void (* callback)(void)

Uma função que será chamada quando o valor da entrada analógica mudar.

Return Values

Esta função não devolve qualquer valor.

Examples

Defina a função de callback (fora de int main())

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

Registe o callback dentro de 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);
}