Hẹn giờ#
Giới thiệu#
Lớp timer được sử dụng để giữ thời gian và tương tác với bộ hẹn giờ độc lập với bộ hẹn giờ của Brain.
Hàm tạo lớp#
timer();
Lớp Destructor#
Hủy đối tượng hẹn giờ timer các tài nguyên liên quan.
~timer();
Thông số#
Hàm khởi tạo này không chấp nhận bất kỳ tham số nào.
Ví dụ#
// Create a timer instance
timer myTimer = timer();
Chức năng thành viên#
Lớp timer bao gồm các hàm thành viên sau:
reset— Resets the timer to zero.value— Returns the elapsed time since the timer started.event— Gọi một hàm sau một số mili giây được chỉ định, với các đối số tùy chọn.
Trước khi gọi bất kỳ hàm thành viên nào của bộ hẹn giờ timer , cần phải tạo một thể hiện của bộ hẹn giờ timer , như được hiển thị bên dưới:
/* This constructor is required to use a
custom timer. Replace the values
as needed. */
// Create a timer instance
timer myTimer = timer();
/* This constructor is required when using VS Code.
A Brain is generated automatically at the start of
VEXcode projects. */
// Create the Brain to use Brain.Timer
brain Brain = brain();
reset#
Đặt bộ đếm thời gian về 0.
Available Functionsvoid reset();
Hàm này không chấp nhận bất kỳ tham số nào.
Return ValuesHàm này không trả về giá trị nào.
Exampleswhile (true) {
// Clear the timer every time the screen is pressed
if (Brain.Screen.pressing()) {
myTimer.reset();
}
Brain.Screen.clearScreen();
Brain.Screen.setCursor(1, 1);
Brain.Screen.print("Time: %.2f", myTimer.value());
wait(50, msec);
}
value#
Trả về giá trị hiện tại của bộ đếm thời gian.
Available Functionsdouble value();
Hàm này không chấp nhận bất kỳ tham số nào.
Return ValuesMột giá trị kiểu double biểu thị khoảng thời gian đã trôi qua tính bằng giây.
NotesBộ đếm thời gian bắt đầu đếm khi nó được lắp ráp xong.
Calling
resetresets the timer value to zero.
// Display the timer as it ticks up
while (true) {
Brain.Screen.clearScreen();
Brain.Screen.setCursor(1, 1);
Brain.Screen.print("Time: %.2f", myTimer.value());
wait(50, msec);
}
event#
Đăng ký một hàm gọi lại để được thực thi sau một khoảng thời gian trễ nhất định.
Available Functions1 — Đăng ký một hàm gọi lại để chạy sau một khoảng thời gian trễ nhất định và truyền một giá trị do người dùng định nghĩa cho hàm gọi lại.
static void event( void (*callback)(void *), uint32_t value );
Parameters2 — Đăng ký một hàm gọi lại để chạy sau một khoảng thời gian trễ nhất định.
static void event( void (*callback)(void), uint32_t value );
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Một hàm sẽ được gọi sau khoảng thời gian trễ được chỉ định và nhận một đối số do người dùng định nghĩa. |
|
|
Một hàm sẽ được gọi sau khoảng thời gian trễ đã chỉ định. |
|
|
Khoảng thời gian trễ, tính bằng mili giây, trước khi hàm gọi lại được thực thi. |
Hàm này không trả về giá trị nào.
NotesChức năng này lên lịch gọi lại một lần duy nhất; nó không tự động lặp lại.
Hàm gọi lại phải trả về
void.Nhiều sự kiện có thể được lên lịch cùng một lúc.
Định nghĩa hàm (bên ngoài
int main())// Create a function to turn the screen orange void turnOrange() { Brain.Screen.clearScreen(orange); }Đăng ký hàm bên trong
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); timer myTimer = timer(); // Call turnOrange after 2 seconds myTimer.event(turnOrange, 2000); }