Таймер#
Введение#
Таймер контроллера дрона VEX AIR отслеживает прошедшее время с начала проекта. Его можно использовать для измерения времени выполнения задачи или для сброса таймера перед началом новых операций.
Ниже приведён список всех доступных методов:
Действие – Управление таймером.
reset– Сбрасывает таймер до нуля.
Геттер – сообщает текущее значение таймера.
time– Возвращает, сколько времени прошло.
Обратный вызов – запуск функций с задержкой.
event– Регистрирует функцию, которая будет вызвана через указанное количество миллисекунд.
Конструктор - Создает таймер для отслеживания времени.
Timer- Создать новый объект таймера, который можно использовать с этими методами.
Действие#
reset#
reset обнуляет таймер. Это можно использовать для измерения времени выполнения дополнительных участков кода в рамках одного проекта.
Usage:
timer.reset()
Параметры |
Описание |
|---|---|
Этот метод не имеет параметров. |
# Display the time the drone takes to climb upwards.
drone.take_off(500)
timer.reset()
drone.climb_for(UP, 500)
controller.screen.print("Time elapsed: ")
controller.screen.print(timer.time(SECONDS))
drone.land()
Геттер#
time#
time возвращает время с момента последнего сброса таймера в десятичном формате. Таймер автоматически сбрасывается в начале проекта.
Usage:
timer.time(units)
Параметры |
Описание |
|---|---|
|
Единица измерения времени: |
# Display the time in two units.
while True:
controller.screen.clear_screen()
controller.screen.set_cursor(1, 1)
controller.screen.print("Time: {} ms".format(timer.time(MSEC)))
controller.screen.next_row()
controller.screen.print("Time: {:.2f} s".format(timer.time(SECONDS)))
wait(50, MSEC)
Перезвонить#
event#
Событие event вызывает функцию по истечении заданного промежутка времени.
Применение:
timer.event(callback, delay, arg)
Параметры |
Описание |
|---|---|
|
Функция, которая будет выполняться при срабатывании события таймера. |
|
Задержка перед вызовом функции в миллисекундах. |
|
Необязательно. Кортеж, содержащий аргументы для передачи в функцию обратного вызова. См. Использование событий с параметрами для получения дополнительной информации. |
# Create a function to play a looping sound.
def on_timer():
controller.sound.play(LOOPING)
# Play the sound after 4 seconds (4000 mS).
timer.event(on_timer, 4000)
Конструктор#
Timer#
Timer создает новый таймер. Timer немедленно начнет отсчет с момента своего создания и будет работать со всеми методами timer.
Usage:
Timer()
Параметр |
Описание |
|---|---|
Этот конструктор не имеет параметров. |
# Display 2 timers with a 2 second difference.
wait(2, SECONDS)
stopwatch = Timer()
while True:
controller.screen.clear_screen()
controller.screen.set_cursor(1, 1)
controller.screen.print("Timer: ")
controller.screen.print(timer.time(SECONDS))
controller.screen.set_cursor(4, 1)
controller.screen.print("Stopwatch: ")
controller.screen.print(stopwatch.time(SECONDS))
wait(0.1, SECONDS)