Digital en#

Introducción#

The digital_in class is used to read digital input signals from devices connected to a VEX EXP 3-Wire port. It provides access to the current signal state and allows callback functions to be registered for input state changes.

Constructores de clases#

digital_in( 
    triport::port &port );

Instructor de clase#

Destroys the digital_in object and releases associated resources.

~digital_in();

Parámetros#

Parámetro

Tipo

Descripción

port

triport::port &

The 3-Wire Port that the Digital Input device 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).

Ejemplo#

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

Funciones de los miembros#

The digital_in class includes the following member functions:

  • value — Returns the current state of the digital input.

  • high — Registers a function to be called whenever the Digital In device sends a high signal.

  • low — Registers a function to be called whenever the Digital Out device sends a low signal.

Before calling any digital_in member functions, a digital_in instance must be created, as shown below:

/* This constructor is required when using VS Code.
Digital input configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

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

value#

Devuelve el estado actual de la entrada digital.

Funciones disponibles

int32_t value();

Parámetros

Esta función no acepta ningún parámetro.

Valores de retorno

Returns an int32_t representing the current digital signal state:

  • 1 – El puerto de entrada digital está recibiendo una señal alta (aproximadamente 5V).

  • 0 – El puerto de entrada digital está recibiendo una señal baja (aproximadamente 0 V).

high#

Registra una función que se llamará cada vez que el dispositivo de entrada digital envíe una señal alta (aproximadamente 5 V).

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

Parameters

Parámetro

Tipo

Descripción

callback

void (* callback)(void)

Una función que se llamará cuando la entrada sea alta.

Return Values

Esta función no devuelve ningún valor.

Examples

Define the callback function (outside of int main())

// Display that the input is high
void inputHigh() {
  Brain.Screen.print("digital input high");
}

Register the callback inside int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run inputHigh when the Digital Input is high
  DigitalInA.high(inputHigh);
}

low#

Registra una función que se llamará cada vez que el dispositivo de salida digital envíe una señal baja (aproximadamente 0 V).

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

Parameters

Parámetro

Tipo

Descripción

callback

function

Una función que se llamará cuando la entrada sea baja.

Return Values

Esta función no devuelve ningún valor.

Examples

Define the callback function (outside of int main())

// Display that the input is low
void inputLow() {
  Brain.Screen.print("digital input low");
}

Register the callback inside int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run inputLow when the Digital Input is low
  DigitalInA.low(inputLow);
}