Saklar Bumper#

Perkenalan#

Kelas bumper digunakan untuk mendeteksi kapan Saklar Bumper ditekan dan dilepaskan.

Konstruktor Kelas#

bumper( 
  int32_t index );

Destruktor Kelas#

Menghancurkan objek bumper dan melepaskan sumber daya terkait.

virtual ~bumper();

Parameter#

Parameter

Jenis

Keterangan

index

int32_t

Port Pintar yang terhubung ke Bumper Switch, ditulis sebagai PORTx, di mana x adalah nomor port (misalnya, PORT1).

Contoh#

// Create a bumper instance in Port 1
bumper Bumper1 = bumper(PORT1);

Fungsi Keanggotaan#

Kelas bumper mencakup fungsi anggota berikut:

  • pressing — Mengembalikan nilai jika Saklar Bumper sedang ditekan.

  • pressed — Mendaftarkan fungsi yang akan dipanggil ketika Saklar Bumper ditekan.

  • released — Mendaftarkan fungsi yang akan dipanggil ketika Saklar Bumper dilepaskan.

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

/* This constructor is required when using VS Code.
Bumper Switch configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a bumper instance in Port 1
bumper Bumper1 = bumper(PORT1);

pressing#

Mengembalikan nilai jika Tombol Bumper sedang ditekan.

Available Functions
int32_t pressing();

Parameters

Fungsi ini tidak menerima parameter apa pun.

Return Values

Mengembalikan nilai int32_t yang menunjukkan apakah Saklar Bumper sedang ditekan.

  • 1 — Tombol Bumper sedang ditekan.

  • 0 — Tombol Bumper tidak ditekan.

pressed#

Mendaftarkan fungsi yang akan dipanggil saat Saklar Bumper ditekan.

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

Parameters

Parameter

Jenis

Keterangan

callback

void (*)(void)

Pointer ke sebuah fungsi yang akan dipanggil ketika bumper ditekan. Fungsi tersebut tidak boleh menerima parameter dan harus mengembalikan nilai void.

Return Values

Fungsi ini tidak mengembalikan nilai.

Examples

Definisikan fungsi callback (di luar int main())

// Display a message when bumper is pressed
void BumperPressed() {
  Brain.Screen.print("Bumper pressed");
}

Daftarkan fungsi callback di dalam int main()

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

  // Run BumperPressed when the value of the Bumper Switch is pressed.
  Bumper1.pressed(BumperPressed);
}

released#

Mendaftarkan fungsi yang akan dipanggil saat Saklar Bumper dilepas.

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

Parameters

Parameter

Jenis

Keterangan

callback

void (*)(void)

Pointer ke sebuah fungsi yang akan dipanggil ketika bumper dilepas. Fungsi tersebut tidak boleh menerima parameter dan harus mengembalikan nilai void.

Return Values

Fungsi ini tidak mengembalikan nilai.

Examples

Definisikan fungsi callback (di luar int main())

// Display a message when bumper is released
void BumperReleased() {
  Brain.Screen.print("Bumper released");
}

Daftarkan fungsi callback di dalam int main()

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

  // Run BumperReleased when the value of the Bumper Switch is released.
  Bumper1.released(BumperReleased);
}