Tombol#

Perkenalan#

Kelas button diturunkan dari kelas dasar brain dan menyediakan akses ke tombol IQ (generasi ke-2) Brain, memungkinkan robot Anda untuk memantau penekanan tombol brain.

Mengakses#

Kelas brain menyediakan dua belas objek tombol. Setiap objek merupakan instance dari kelas button dan dapat diakses melalui instance brain.

Obyek

Contoh Penggunaan

Keterangan

buttonCheck

Brain.buttonCheck.pressing()

Periksa tombol

buttonLeft

Brain.buttonLeft.pressing()

Tombol kiri

buttonRight

Brain.buttonRight.pressing()

Tombol kanan

Catatan#

  • Objek tombol button disediakan oleh otak. Objek ini tidak dibangun secara langsung.

Fungsi Keanggotaan#

Kelas Button mencakup fungsi anggota berikut:

  • pressed — Mendaftarkan fungsi yang akan dipanggil ketika tombol yang ditentukan ditekan.

  • released — Mendaftarkan fungsi yang akan dipanggil ketika tombol yang ditentukan dilepaskan.

  • pressing — Mengembalikan apakah tombol yang ditentukan sedang ditekan.

Sebelum memanggil fungsi anggota button apa pun, sebuah instance brain harus dibuat, seperti yang ditunjukkan di bawah ini:

// Create a brain instance
brain();

pressed#

Mendaftarkan fungsi callback yang akan dijalankan ketika tombol tertentu pada papan sirkuit ditekan.

Available Functions
void pressed( 
  void (* callback)(void) ) const;

Parameters

Parameter

Jenis

Keterangan

callback

void (*)(void)

Sebuah fungsi yang dipanggil ketika tombol yang ditentukan ditekan.

Return Values

Fungsi ini tidak mengembalikan nilai.

Examples

Fungsi ini dapat dipanggil pada objek tombol otak apa pun, misalnya:

  • Brain.buttonCheck
  • Brain.buttonLeft
  • Brain.buttonRight

Definisikan fungsi callback (di luar int main())

// Drive forward when check is pressed
void driveForward() {
    Drivetrain.driveFor(forward, 100, mm);
}

Daftarkan fungsi callback di dalam int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Call driveForward when the check button is pressed
  Brain.buttonCheck.pressed(driveForward);
}

released#

Mendaftarkan fungsi callback yang akan dijalankan ketika tombol otak tertentu dilepaskan.

Available Functions
void released( 
  void (* callback)(void) ) const;

Parameter#

Parameter

Jenis

Keterangan

callback

void (*)(void)

Sebuah fungsi yang dipanggil ketika tombol yang ditentukan dilepaskan.

Return Values

Fungsi ini tidak mengembalikan nilai.

Examples

Fungsi ini dapat dipanggil pada objek tombol otak apa pun, misalnya:

  • Brain.buttonCheck
  • Brain.buttonLeft
  • Brain.buttonRight

Definisikan fungsi callback (di luar int main())

// Drive backward when the left button is released
void backUp() {
    Drivetrain.driveFor(reverse, 100, mm);
}

Daftarkan fungsi callback di dalam int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Call backUp when the left button is released
  Brain.buttonLeft.released(backUp);
}

pressing#

Mengembalikan nilai yang menunjukkan apakah tombol otak tertentu sedang ditekan saat ini.

Available Functions
bool pressing() const;

Parameters

Fungsi ini tidak menerima parameter apa pun.

Return Values

Mengembalikan nilai Boolean yang menunjukkan apakah tombol yang ditentukan sedang ditekan:

  • true — Tombol sedang ditekan.

  • false — Tombol tidak ditekan.

Examples

Fungsi ini dapat dipanggil pada objek tombol otak apa pun, misalnya:

  • Brain.buttonCheck
  • Brain.buttonLeft
  • Brain.buttonRight
// Turn right while right is pressed
while (true) {
    if (Brain.buttonRight.pressing()) {
        Drivetrain.turn(right);
    } else {
        Drivetrain.stop();
    }
    wait(5, msec);
}