Контролер#
Вступ#
Клас controller представляє контролер VEX IQ, підключений до IQ Brain. Об’єкт controller може використовуватися для доступу до значень осі джойстика, зчитування станів кнопок, реєстрації зворотних викликів кнопок або джойстика та перевірки підключення контролера.
IQ Brain (2-го покоління) може підключатися до контролера IQ (2-го покоління) або IQ (1-го покоління). На контролері IQ (1-го покоління) має бути встановлено синій Smart Radio.
Коли у вікні «Пристрої» налаштовано один або декілька контролерів, VEXcode IQ також надає значення RemoteControlCodeEnabledЦя глобальна змінна вмикає або вимикає дії контролера, налаштовані в меню «Пристрої».
Похідні класи#
Клас controller надає такі похідні класи:
Конструктори#
1 - Створює контролер, використовуючи тип основного контролера. Зазвичай використовується, коли підключено один контролер.
controller();
2 - Створює контролер для вказаного типу контролера. Використовується, коли підключено два контролери.
controller( controllerType id );
Доступні функції
controller();
controller(controllerType id);
Параметр |
Тип |
Опис |
|---|---|---|
|
|
Необов’язково. Тип контролера для створення: |
Примітки
В одному проєкті можна створити лише один primary контролер та один partner контролер.
Приклад
// Create the primary controller
controller Controller1 = controller();
// Create a partner controller
controller Controller2 = controller(partner);
Деструктор#
~контролер#
~controller знищує об’єкт контролера controller ресурси.
Доступна функція
~controller();
Параметри#
Параметр |
Тип |
Опис |
|---|---|---|
|
|
Тип створюваного контролера:
|
Нотатки#
В одному проєкті може існувати лише один
primaryта одинpartnerконтролер.
Приклад#
// Create a controller instance
controller Controller = controller();
Функції-члени#
Клас controller містить таку функцію-член:
installed- Перевіряє, чи контролер підключений до мозку.
встановлено#
installed повертає, чи підключено контролер до Brain.
Доступна функція
bool installed();
Параметри
Ця функція не має параметрів.
Повернене значення
Повертає логічне значення.
true- The controller is installed/connected.false- The controller is not installed/connected.
Глобальні змінні#
Код віддаленого керування увімкнено#
RemoteControlCodeEnabled вмикає або вимикає дії контролера, налаштовані в меню «Пристрої». Дії, налаштовані контролером, увімкнено за замовчуванням.
Usage:
RemoteControlCodeEnabled = state;
Значення |
Опис |
|---|---|
|
Вмикає дії, налаштовані контролером. |
|
Вимикає дії, налаштовані контролером. |
true- Controller-configured actions are enabled.false- Controller-configured actions are disabled.
Дії, налаштовані контролером, увімкнено за замовчуванням.
// 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;