Kontrolieris#

Ievads#

controller klase apzīmē VEX IQ kontrolleri, kas savienots ar IQ Brain. controller objektu var izmantot, lai piekļūtu kursorsviras asu vērtībām, nolasītu pogu stāvokļus, reģistrētu pogu vai kursorsviras atzvanīšanas signālus un pārbaudītu, vai kontrolieris ir pievienots.

IQ (1. paaudzes) smadzenes var izveidot savienojumu ar IQ (1. paaudzes) kontrolieri. Tās atbalsta arī IQ (2. paaudzes) kontrolieri.

Ja ierīcēs (Devices) ir konfigurēts viens vai vairāki kontrolleri, VEXcode IQ nodrošina arī RemoteControlCodeEnabledŠis globālais mainīgais iespējo vai atspējo kontrollera darbības, kas konfigurētas ierīcēs (Devices).

Atvasinātās klases#

controller klase nodrošina šādas atvasinātās klases:

  • Axisass — Nodrošina piekļuvi kursorsviras ass ievades vērtībām un izmaiņu notikumiem.

  • Button — nodrošina piekļuvi pogas stāvokļa un pogas notikumu atzvanīšanas pieprasījumiem.

Konstruktori#

1 - Izveido kontrolieri, izmantojot primārā kontrollera tipu. Parasti izmanto, ja ir pievienots viens kontrolieris.

controller();

2 - Izveido kontrolleri norādītajam kontrollera tipam. Izmanto, ja ir savienoti divi kontrolleri.

controller(
    controllerType id );

Pieejamās funkcijas

controller();

controller(controllerType id);

Parametrs

Tips

Apraksts

id

controllerType

Neobligāti. Izveidojamā kontroliera tips: primary primārajam kontrolierim, kas savienots ar smadzenēm, vai partner otrajam kontrolierim, kas savienots ar smadzenēm.

Piezīmes

Vienā projektā var izveidot tikai vienu primary kontrolieri un vienu partner kontrolieri.

Piemērs

// Create the primary controller
controller Controller1 = controller();

// Create a partner controller
controller Controller2 = controller(partner);

Iznīcinātājs#

~kontrolieris#

~controller iznīcina controller objektu un atbrīvo saistītos resursus.

Pieejamās funkcijas

~controller();

Parametri#

Parametrs

Tips

Apraksts

id

controllerType

Izveidojamā kontroliera tips:

  • primary  — primārais kontrolieris, kas savienots ar smadzenēm.
  • partner  — partnera (otrais) kontrolieris, kas savienots ar smadzenēm.

Piezīmes#

  • Vienā projektā var pastāvēt tikai viens primary un viens partner kontrolieris.

Piemērs#

// Create a controller instance
controller Controller = controller();

Dalībnieku funkcijas#

controller klase ietver šādu dalībfunkciju:

  • installed — Pārbauda, ​​vai kontrolieris ir savienots ar smadzenēm.

uzstādīts#

installed atgriež, vai kontrolieris ir savienots ar smadzenēm.

Pieejamās funkcijas

bool installed();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true - The controller is installed/connected.
  • false - The controller is not installed/connected.

Globālie mainīgie#

Tālvadības kods iespējots#

RemoteControlCodeEnabled iespējo vai atspējo kontrollera darbības, kas konfigurētas ierīču izvēlnē. Kontroliera konfigurētās darbības ir iespējotas pēc noklusējuma.

Usage:
RemoteControlCodeEnabled = state;

Vērtība

Apraksts

true

Iespējo kontrollera konfigurētās darbības.

false

Atspējo kontrollera konfigurētās darbības.

Values
  • true - Controller-configured actions are enabled.
  • false - Controller-configured actions are disabled.
Notes
  • Kontroliera konfigurētās darbības pēc noklusējuma ir iespējotas.

Examples
// Drive forward or backward using the left joystick
RemoteControlCodeEnabled = false;

while (true) {
  if (Controller1.Axis3.position() > 0) {
    Drivetrain.drive(forward);
  }
  else if (Controller1.Axis3.position() < 0) {
    Drivetrain.drive(reverse);
  }
  // Press E Up to use controller configured actions again
  else if (Controller1.ButtonEUp.pressing()) {
    break;
  }
  else {
    Drivetrain.stop();
  }

  wait(20, msec);
}

RemoteControlCodeEnabled = true;