Digital ingång#

Introduktion#

Klassen digital_in gör det möjligt för V5 Brain att läsa en digital signal från en extern källa, såsom en brytare eller sensor. Den detekterar om ingångsledningen är hög och tar emot 5 volt, eller låg och tar emot 0 volt. Detta kan användas för att bestämma på/av-lägen eller utlösa händelser i ett projekt.

Klasskonstruktörer#

digital_in(
  triport::port &port );

Klassförstörare#

Förstör digital_in objektet och frigör tillhörande resurser.

~digital_in();

Parametrar#

Parameter

Typ

Beskrivning

port

triport::port &

Den 3-trådsport som den digitala ingångsenheten är ansluten till, skriven som Brain.ThreeWirePort.X eller ExpanderName.X, där X är portbokstaven (till exempel Brain.ThreeWirePort.A eller Expander1.A).

Exempel#

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

Medlemsfunktioner#

Klassen digital_in innehåller följande medlemsfunktioner:

  • value — Returnerar om den digitala ingångsporten tar emot en hög eller låg signal.

  • high — Registrerar en funktion som ska anropas närhelst Digital In-enheten skickar en hög signal.

  • low — Registrerar en funktion som ska anropas närhelst den digitala ingångsenheten skickar en låg signal.

Innan några digital_in medlemsfunktioner anropas måste en digital_in instans skapas, som visas nedan:

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

Returnerar om den digitala ingångsporten tar emot en hög eller låg signal.

Tillgängliga funktioner

int32_t value();

Parametrar

Den här funktionen accepterar inga parametrar.

Returvärden

Returnerar int32_t som representerar det aktuella digitala signaltillståndet:

  • 1 – Den digitala ingångsporten tar emot en hög signal (ungefär 5 V).

  • 0 – Den digitala ingångsporten tar emot en låg signal (ungefär 0 V).

high#

Registrerar en funktion som ska anropas närhelst den digitala ingångsenheten skickar en hög signal (ungefär 5 V).

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

Parameters

Parameter

Typ

Beskrivning

callback

void (* callback)(void)

En funktion som anropas när ingången är hög.

Return Values

Den här funktionen returnerar inget värde.

Examples

Definiera callback-funktionen (utanför int main())

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

Registrera återuppringningen inuti 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#

Registrerar en funktion som ska anropas närhelst den digitala ingångsenheten skickar en låg signal (ungefär 0 V).

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

Parameters

Parameter

Typ

Beskrivning

callback

void (* callback)(void)

En funktion som anropas när ingången är låg.

Return Values

Den här funktionen returnerar inget värde.

Examples

Definiera callback-funktionen (utanför int main())

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

Registrera återuppringningen inuti 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);
}