Analog#

Introduction#

An Analog device reads continuous voltage signals from legacy VEX 3-pin analog sensors, allowing the V5 Brain to measure values across a range instead of high or low states like with DigitalIn.

Example sensors are:

This page uses analog_a as the example Analog device’s name. Replace it with your own configured name as needed.

Below is a list of available methods:

  • value – Returns the value of the analog device.

  • changed – Registers a function to be called whenever the analog device’s value changes.

Constructor – Manually initialize and configure an Analog device.

value#

value returns the value of the analog device.

Usage:
analog_a.value(units)

Parameter

Description

units

Optional. The units to represent the value:

  • PERCENT
  • AnalogUnits.EIGHTBIT – Measure in an 8-bit analog value.
  • AnalogUnits.TENBIT – Measure in a 10-bit analog value.
  • AnalogUnits.TWELVEBIT (default) – Measure in a 12-bit analog value.

changed#

changed registers a function to be called whenever the analog device’s value changes.

Usage:
analog_a.changed(callback, arg)

Parameters

Description

callback

A previously defined function that executes when the analog device’s value changes.

arg

Optional. A tuple containing arguments to pass to the callback function. See Functions with Parameters for more information.

def my_function():
  brain.screen.print("Changed")

# Call my_function whenever analog_a's value changes
analog_a.changed(my_function)

Constructor#

Constructors are used to create Analog objects, which are necessary for configuring an Analog device.

AnalogIn#

AnalogIn creates an Analog device.

Usage:
AnalogIn(port)

Parameter

Description

port

The 3-Wire Port that the analog device is connected to:

  • On the V5 Brainbrain.three_wire_port.x where x is the number of the port.
  • On a 3-Wire Expanderexpander.a where expander is the name of the expander instance.

# Create an analog device in Port A
analog_a = AnalogIn(brain.three_wire_port.a)