Digitālā ieeja#

Ievads#

Klase digital_in ļauj EXP Brain nolasīt digitālo signālu no ārēja avota, piemēram, slēdža vai sensora. Tā nosaka, vai ieejas līnija ir augsta, saņemot 5 voltus, vai zema, saņemot 0 voltus. To var izmantot, lai noteiktu ieslēgšanas/izslēgšanas stāvokļus vai aktivizētu notikumus projektā.

Klases konstruktori#

digital_in(
  triport::port &port );

Klases iznīcinātājs#

Iznīcina objektu digital_in un atbrīvo ar to saistītos resursus.

~digital_in();

Parametri#

Parametrs

Tips

Apraksts

port

triport::port &

3 vadu ports, kuram ir pievienota digitālās ievades ierīce, kas pierakstīts kā Brain.ThreeWirePort.X vai ExpanderName.X, kur X ir porta burts (piemēram, Brain.ThreeWirePort.A vai Expander1.A).

Piemērs#

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

Dalībnieku funkcijas#

Klasē digital_in ir iekļautas šādas dalībfunkcijas:

  • value — Atgriež, vai digitālās ieejas ports saņem augstu vai zemu signālu.

  • high — Reģistrē funkciju, kas tiks izsaukta ikreiz, kad digitālās ieejas ierīce nosūta augstu signālu.

  • low — Reģistrē funkciju, kas tiks izsaukta ikreiz, kad digitālās ieejas ierīce nosūta zemu signālu.

Pirms jebkuru digital_in dalībfunkciju izsaukšanas ir jāizveido digital_in instance, kā parādīts zemāk:

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

Atgriež, vai digitālās ieejas ports saņem augstu vai zemu signālu.

Pieejamās funkcijas

int32_t value();

Parametri

Šī funkcija nepieņem nekādus parametrus.

Atgriešanas vērtības

Atgriež int32_t , kas attēlo pašreizējo digitālā signāla stāvokli:

  • 1 – Digitālās ieejas ports saņem augstu signālu (aptuveni 5 V).

  • 0 – Digitālās ieejas ports saņem zemu signālu (aptuveni 0 V).

high#

Reģistrē funkciju, kas tiks izsaukta ikreiz, kad digitālās ieejas ierīce nosūta augstu signālu (aptuveni 5 V).

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

Parameters

Parametrs

Tips

Apraksts

callback

void (* callback)(void)

Funkcija, kas tiks izsaukta, kad ievades vērtība ir augsta.

Return Values

Šī funkcija neatgriež vērtību.

Examples

Definējiet atzvanīšanas funkciju (ārpus int main())

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

Reģistrējiet atzvanīšanas funkciju int main() iekšpusē

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#

Reģistrē funkciju, kas tiks izsaukta ikreiz, kad digitālās ieejas ierīce nosūta zemu signālu (aptuveni 0 V).

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

Parameters

Parametrs

Tips

Apraksts

callback

void (* callback)(void)

Funkcija, kas tiks izsaukta, ja ievades līmenis ir zems.

Return Values

Šī funkcija neatgriež vērtību.

Examples

Definējiet atzvanīšanas funkciju (ārpus int main())

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

Reģistrējiet atzvanīšanas funkciju int main() iekšpusē

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