Kontroller#

Introduktion#

Klassen controller Ett controller -styrenhetsobjekt kan användas för att komma åt joystickaxelvärden, läsa knapptillstånd, registrera knapp- eller joystickmotringningar och kontrollera om styrenheten är ansluten.

IQ (2:a generationen) Brain kan anslutas till antingen en IQ (2:a generationen) eller en IQ (1:a generationen) Controller. En IQ (1:a generationen) Controller måste ha en blå Smart Radio installerad.

När en eller flera regulatorer är konfigurerade i fönstret Enheter, tillhandahåller VEXcode IQ även RemoteControlCodeEnabledDenna globala variabel aktiverar eller inaktiverar regulatoråtgärder som konfigurerats i menyn Enheter.

Härledda klasser#

Klassen controller tillhandahåller följande härledda klasser:

  • Axis - Ger åtkomst till joystickaxelns inmatningsvärden och ändringshändelser.

  • Button - Ger åtkomst till knappstatus och återanrop för knapphändelser.

Konstruktörer#

1 - Skapar en styrenhet med den primära styrenhetens typ. Används vanligtvis när en enda styrenhet är ansluten.

controller();

2 - Skapar en regulator för den angivna regulatortypen. Används när två regulatorer är anslutna.

controller(
    controllerType id );

Tillgängliga funktioner

controller();

controller(controllerType id);

Parameter

Typ

Beskrivning

id

controllerType

Valfritt. Kontrolltypen som ska skapas: primary för den primära kontrollenheten ansluten till hjärnan eller partner för den andra kontrollenheten ansluten till hjärnan.

Anteckningar

Endast en primary styrenhet och en partner styrenhet kan skapas i ett enda projekt.

Exempel

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

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

Destruktor#

~kontrollant#

~controller förstör controller objektet och frigör tillhörande resurser.

Tillgänglig funktion

~controller();

Parametrar#

Parameter

Typ

Beskrivning

id

controllerType

Typen av styrenhet som skapas:

  • primary - Den primära styrenheten ansluten till hjärnan.
  • partner - Partnerstyrenheten (den andra) ansluten till hjärnan.

Anteckningar#

  • Endast en primary och en partner styrenhet får finnas i ett och samma projekt.

Exempel#

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

Medlemsfunktioner#

Klassen controller innehåller följande medlemsfunktion:

  • installed - Kontrollerar om handkontrollen är ansluten till hjärnan.

installerad#

installed returnerar om kontrollenheten är ansluten till hjärnan.

Tillgänglig funktion

bool installed();

Parametrar

Den här funktionen har inga parametrar.

Returvärde

Returnerar ett booleskt värde.

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

Globala variabler#

Fjärrkontrollkod aktiverad#

RemoteControlCodeEnabled aktiverar eller inaktiverar kontrollåtgärder som konfigurerats i menyn Enheter. Kontrollkonfigurerade åtgärder är aktiverade som standard.

Usage:
RemoteControlCodeEnabled = state;

Värde

Beskrivning

true

Aktiverar kontrollkonfigurerade åtgärder.

false

Inaktiverar kontrollens konfigurerade åtgärder.

Values
  • true - Controller-configured actions are enabled.
  • false - Controller-configured actions are disabled.
Notes
  • Styrenhetskonfigurerade åtgärder är aktiverade som standard.

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

while (true) {
  if (Controller1.AxisA.position() > 0) {
    Drivetrain.drive(forward);
  }
  else if (Controller1.AxisA.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;