Công tắc cản xe#

Giới thiệu#

Lớp bumper được sử dụng để phát hiện khi công tắc Bumper được nhấn và nhả ra.

Hàm tạo lớp#

bumper( 
  int32_t index );

Lớp Destructor#

Phá hủy đối tượng bumper và giải phóng các tài nguyên liên quan.

virtual ~bumper();

Thông số#

Tham số

Kiểu

Sự miêu tả

index

int32_t

Cổng thông minh mà công tắc Bumper được kết nối, được viết dưới dạng PORTx, trong đó x là số cổng (ví dụ: PORT1).

Ví dụ#

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

Chức năng thành viên#

Lớp bumper bao gồm các hàm thành viên sau:

  • pressing — Trả về nếu Công tắc Bumper đang được nhấn.

  • pressed — Đăng ký một hàm sẽ được gọi khi Công tắc Bumper được nhấn.

  • released — Đăng ký một hàm sẽ được gọi khi Công tắc Bumper được nhả ra.

Trước khi gọi bất kỳ hàm thành viên nào của bumper , cần phải tạo một thể hiện bumper , như được hiển thị bên dưới:

/* 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#

Trả về giá trị nếu nút Bumper Switch hiện đang được nhấn.

Available Functions
int32_t pressing();

Parameters

Hàm này không chấp nhận bất kỳ tham số nào.

Return Values

Trả về giá trị int32_t cho biết công tắc Bumper có đang được nhấn hay không.

  • 1 — Công tắc Bumper đang được nhấn.

  • 0 — Công tắc Bumper không được nhấn.

pressed#

Đăng ký một hàm sẽ được gọi khi công tắc Bumper được nhấn.

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

Parameters

Tham số

Kiểu

Sự miêu tả

callback

void (*)(void)

Con trỏ đến một hàm sẽ được gọi khi nút cản được nhấn. Hàm này không được nhận tham số và trả về kiểu void.

Return Values

Hàm này không trả về giá trị nào.

Examples

Xác định hàm gọi lại (bên ngoài int main())

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

Đăng ký hàm gọi lại bên trong 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#

Đăng ký một hàm sẽ được gọi khi nút Bumper Switch được nhả ra.

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

Parameters

Tham số

Kiểu

Sự miêu tả

callback

void (*)(void)

Con trỏ đến một hàm sẽ được gọi khi nút giảm xóc được nhả ra. Hàm này không được nhận tham số và trả về kiểu void.

Return Values

Hàm này không trả về giá trị nào.

Examples

Xác định hàm gọi lại (bên ngoài int main())

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

Đăng ký hàm gọi lại bên trong 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);
}