Pengontrol#
Perkenalan#
Kelas controller merepresentasikan sebuah VEX V5 Controller yang terhubung ke V5 Brain. Objek controller dapat digunakan untuk mengakses nilai sumbu joystick, membaca status tombol, mendaftarkan callback tombol atau joystick, membuat Controller bergetar, menulis ke layar Controller, dan memeriksa apakah Controller terhubung.
VEX V5 kompatibel dengan EXP Controller. Lihat API EXP Controller untuk informasi selengkapnya.
Saat satu atau lebih Controller dikonfigurasi di jendela Devices, VEXcode V5 juga menyediakan RemoteControlCodeEnabledVariabel global ini mengaktifkan atau menonaktifkan tindakan Controller yang dikonfigurasi di menu Devices.
Kelas Turunan#
Kelas controller menyediakan kelas turunan berikut:
Konstruktor#
1 - Membuat pengontrol menggunakan tipe pengontrol utama. Biasanya digunakan saat hanya satu pengontrol yang terhubung.
controller();
2 - Membuat pengontrol untuk tipe pengontrol yang ditentukan. Digunakan ketika dua pengontrol terhubung.
controller( controllerType id );
Fungsi yang Tersedia
controller();
controller(controllerType id);
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Opsional. Tipe Controller yang akan dibuat: |
Catatan
Only one primary Controller and one partner Controller can be created in a single project.
Contoh
// Create the primary Controller
controller Controller1 = controller();
// Create a partner Controller
controller Controller2 = controller(partner);
Penghancur#
~pengontrol#
~controller destroys the controller object and releases associated resources.
Fungsi yang Tersedia
~controller();
Parameter#
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Jenis pengontrol yang sedang dibuat:
|
Catatan#
Hanya satu pengontrol utama
primarydan satu pengontrol mitra (partnerboleh ada dalam satu proyek.
Contoh#
// Create a V5 controller instance
controller Controller = controller();
Fungsi Keanggotaan#
Kelas controller mencakup fungsi anggota berikut:
rumble- Menggetarkan pengontrol menggunakan pola.installed- Memeriksa apakah pengontrol terhubung ke otak.
gemuruh#
rumble membuat Controller bergetar menggunakan pola tertentu. Dalam rangkaian pola tersebut, titik-titik mewakili getaran pendek, garis-garis mewakili getaran panjang, dan spasi mewakili jeda.
Fungsi yang Tersedia
void rumble(const char *str);
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Serangkaian titik, garis, dan spasi yang mewakili pola gemuruh. |
Nilai Kembalian
Fungsi ini tidak mengembalikan nilai.
Contoh
// Rumble with a short-short-long pattern
Controller1.rumble("..-");
Pencari#
terpasang#
installed mengembalikan informasi apakah Pengontrol terhubung ke Otak.
Fungsi yang Tersedia
bool installed();
Parameter
Fungsi ini tidak memiliki parameter.
Nilai Kembalian
Mengembalikan nilai Boolean.
true- The controller is installed/connected.false- The controller is not installed/connected.
Variabel Global#
Kode Kontrol Jarak Jauh Diaktifkan#
RemoteControlCodeEnabled mengaktifkan atau menonaktifkan tindakan Pengontrol yang dikonfigurasi di menu Perangkat. Tindakan yang dikonfigurasi Pengontrol diaktifkan secara default.
Usage:
RemoteControlCodeEnabled = state;
Nilai |
Keterangan |
|---|---|
|
Mengaktifkan tindakan yang dikonfigurasi pada Controller. |
|
Menonaktifkan tindakan yang dikonfigurasi pada Controller. |
true- Controller-configured actions are enabled.false- Controller-configured actions are disabled.
Aksi yang dikonfigurasi oleh controller diaktifkan secara default.
// 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 A to use Controller configured actions again
else if (Controller1.ButtonA.pressing()) {
break;
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
RemoteControlCodeEnabled = true;