Analog In#

Introduction#

The analog_in class is used to read analog input signals from devices connected to a VEX V5 3-Wire port. It provides access to the current analog value and allows callback functions to be registered for value changes.

Class Constructors#

analog_in( 
  triport::port &port );

Class Destructor#

Destroys the analog_in object and releases associated resources.

~analog_in();

Parameters#

Parameter

Type

Description

port

triport::port&

The 3-Wire Port that the Analog Input is connected to, written as Brain.ThreeWirePort.X or ExpanderName.X, where X is the port letter (for example, Brain.ThreeWirePort.A or Expander1.A).

Example#

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

Member Functions#

The analog_in class includes the following member functions:

  • changed — Registers a callback function for when the analog input value changes.

Before calling any analog_in member functions, an analog_in instance must be created, as shown below:

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

Returns the current value of the analog input.

Available Functions
int32_t value( 
  analogUnits units );

Parameters

Parameter

Type

Description

units

analogUnits

The unit to represent the value:

  • range8bit — 8-bit analog value (a value with 256 possible states)
  • range10bit — 10-bit analog value (a value with 1024 possible states)
  • range12bit — 12-bit analog value (a value with 4096 possible states)
  • pct — percentage
  • mV — millivolts

Return Values

This function returns the current value of the analog input.

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

changed#

Registers a callback function to be called when the value of the analog input changes.

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

Parameters

Parameter

Type

Description

callback

void (* callback)(void)

A function that will be called when the value of the analog input changes.

Return Values

This function does not return a value.

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

// Run AnalogInputChanged when the value of the
// Analog Input changes
AnalogInA.changed(AnalogInputChanged);