Entrada digital#
Introducción#
La clase digital_in permite que el EXP Brain lea una señal digital de una fuente externa, como un interruptor o un sensor. Detecta si la línea de entrada está alta, recibiendo 5 voltios, o baja, recibiendo 0 voltios. Esto se puede utilizar para determinar los estados de encendido/apagado o desencadenar eventos en un proyecto.
Constructores de clase#
digital_in(
triport::port &port );
Destructor de clase#
Destruye el objeto digital_in y libera los recursos asociados.
~digital_in();
Parámetros#
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
El puerto de 3 cables al que está conectado el dispositivo de entrada digital, escrito |
Ejemplo#
// Create the digital_in instance on 3-Wire Port A
digital_in digin = digital_in(Brain.ThreeWirePort.A);
Funciones de los miembros#
La clase digital_in incluye las siguientes funciones de miembro:
value— Devuelve si el puerto de entrada digital está recibiendo una señal alta o baja.high: registra una función que se llamará cada vez que el dispositivo de entrada digital envíe una señal alta.low: registra una función que se llamará cada vez que el dispositivo de entrada digital envíe una señal baja.
Antes de llamar a cualquier función de miembro digital_in, se debe crear una instancia digital_in, como se muestra a continuación:
/* 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 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 devolución
Devuelve un int32_t que representa el estado actual de la señal digital:
1– El puerto de entrada digital está recibiendo una señal alta (aproximadamente 5 V).0– El puerto de entrada digital está recibiendo una señal baja (aproximadamente 0 V).
high#
Registra una función que se llamará siempre que el dispositivo de entrada digital envíe una señal alta (aproximadamente 5 V).
Available Functionsvoid high(
void (* callback)(void) );
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
Una función que se llamará cuando la entrada sea alta. |
Esta función no devuelve un valor.
ExamplesDefina la función de devolución de llamada (fuera de
int main())// Display that the input is high void inputHigh() { Brain.Screen.print("digital input high"); }Registrar la devolución de llamada dentro de
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á siempre que el dispositivo de entrada digital envíe una señal baja (aproximadamente 0 V).
Available Functionsvoid low(
void (* callback)(void) );
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
Una función que se llamará cuando la entrada sea baja. |
Esta función no devuelve un valor.
ExamplesDefina la función de devolución de llamada (fuera de
int main())// Display that the input is low void inputLow() { Brain.Screen.print("digital input low"); }Registrar la devolución de llamada dentro de
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); }