Cái nút#
Giới thiệu#
Lớp button được kế thừa từ lớp cơ sở brain và cung cấp quyền truy cập vào các nút của EXP Brain, cho phép robot của bạn phát hiện khi các nút của nó được nhấn và nhả ra.
Truy cập#
Lớp button cung cấp ba đối tượng nút. Mỗi đối tượng là một thể hiện của lớp button và có thể được truy cập thông qua một thể hiện brain.
Sự vật |
Ví dụ sử dụng |
Sự miêu tả |
|---|---|---|
|
|
Kiểm tra nút |
|
|
Nút bên trái |
|
|
Nút bên phải |
Chức năng thành viên#
Lớp nút button bao gồm các hàm thành viên sau:
pressing— Trả về liệu nút được chỉ định có đang được nhấn hay không.pressed— Đăng ký một hàm sẽ được gọi khi nút được chỉ định được nhấn.released— Đăng ký một hàm sẽ được gọi khi nút được chỉ định được nhả ra.
Before calling any button member functions, a brain instance must be created, as shown below:
// Create the EXP Brain
brain Brain = brain();
pressing#
Trả về trạng thái cho biết liệu một nút não cụ thể có đang được nhấn hay không.
Available Functionsbool pressing() const;
Hàm này không chấp nhận bất kỳ tham số nào.
Return ValuesTrả về giá trị Boolean cho biết nút được chỉ định có đang được nhấn hay không:
true— Nút đang được nhấn.false— Nút không được nhấn.
Chức năng này có thể được gọi trên bất kỳ đối tượng nút nào, ví dụ:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
// Turn right while the check button is pressed
while (true) {
if (Brain.buttonCheck.pressing()) {
Drivetrain.turn(right);
} else {
Drivetrain.stop();
}
wait(5, msec);
}
pressed#
Đăng ký một hàm gọi lại sẽ chạy khi một nút não cụ thể được nhấn.
Available Functionsvoid pressed(
void (* callback)(void) ) const;
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Một hàm được gọi khi nút được chỉ định được nhấn. |
Hàm này không trả về giá trị nào.
ExamplesChức năng này có thể được gọi trên bất kỳ đối tượng nút não nào, ví dụ:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Xác định hàm gọi lại (bên ngoài
int main())// Drive forward when the right button is pressed void driveForward() { Drivetrain.driveFor(forward, 100, mm); }Đă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(); // Call driveForward when the right button is pressed Brain.buttonRight.pressed(driveForward); }
released#
Đăng ký một hàm gọi lại sẽ chạy khi một nút não cụ thể được nhả ra.
Available Functionsvoid released(
void (* callback)(void) ) const;
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Một hàm được gọi khi nút được chỉ định được nhả ra. |
Hàm này không trả về giá trị nào.
ExamplesChức năng này có thể được gọi trên bất kỳ đối tượng nút não nào, ví dụ:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Xác định hàm gọi lại (bên ngoài
int main())// Drive backward when the left button is released void backUp() { Drivetrain.driveFor(reverse, 100, mm); }Đă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(); // Call backUp when the left button is released Brain.buttonLeft.released(backUp); }