Digital en#

Introducción#

The digital_in class allows the EXP Brain to read a digital signal from an external source, such as a switch or sensor. It detects whether the input line is high, receiving 5 volts, or low, receiving 0 volts. This can be used to determine on/off states or trigger events in a project.

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 whether the Digital In port is receiving a high or low signal.

  • 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 In 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#

Indica si el puerto de entrada digital está recibiendo una señal alta o baja.

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 – The Digital In port is receiving a high signal (approximately 5V).

  • 0 – The Digital In port is receiving a low signal (approximately 0V).

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 entrada digital envíe una señal baja (aproximadamente 0 V).

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

Parameters

Parámetro

Tipo

Descripción

callback

void (* callback)(void)

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);
}