Таймер#
Вступ#
Таймер у VEX IQ (2-го покоління) дозволяє відстежувати час, що минув, і виконувати дії на основі часових інтервалів. Його можна використовувати для вимірювання часу виконання певних дій або скидання часу для нових операцій.
Нижче наведено список усіх методів:
Методи — Керування таймером мозку та взаємодія з ним.
time— Повертає, скільки часу минуло.clear— Скидає таймер на нуль.system— Повертає кількість мілісекунд, протягом яких Brain був увімкнений.system_high_res— Повертає кількість мікросекунд, протягом яких Brain був увімкнений.event— Реєструє функцію, яка буде викликана через задану кількість мілісекунд.
Конструктор — Створення додаткових таймерів.
Timer— Створює додатковий таймер.
час#
time повертає час з моменту останнього скидання таймера у вигляді десяткового числа. Таймер автоматично скидається на початку проекту.
Usage:
brain.timer.time(units)
Параметри |
Опис |
|---|---|
|
Одиниця вимірювання часу: |
# Display the current time on the timer
while True:
brain.screen.set_cursor(1, 1)
brain.screen.clear_screen()
brain.screen.print(brain.timer.time(SECONDS))
wait(50, MSEC)
чітко#
clear встановлює таймер на нуль. Це можна використовувати для відліку часу додаткових розділів коду в межах одного проєкту.
Usage:
brain.timer.clear()
Параметри |
Опис |
|---|---|
Цей метод не має параметрів. |
# Reset the timer when a button is pressed
while True:
brain.screen.set_cursor(1, 1)
brain.screen.clear_screen()
brain.screen.print(brain.timer.time(SECONDS))
wait(50, MSEC)
if brain.buttonCheck.pressing():
brain.timer.clear()
система#
system повертає кількість мілісекунд, протягом яких brain був увімкнений.
Usage:
brain.timer.system()
Параметри |
Опис |
|---|---|
Цей метод не має параметрів. |
# Display the time the brain has been on in milliseconds
while True:
brain.screen.set_cursor(1, 1)
brain.screen.clear_screen()
brain.screen.print(brain.timer.system())
brain.screen.print(" MSEC")
wait(50, MSEC)
висока_роздільна_здатність_системи#
system_high_res повертає кількість мікросекунд, протягом яких brain був увімкнений.
Usage:
brain.timer.system_high_res()
Параметри |
Опис |
|---|---|
Цей метод не має параметрів. |
# Display the time the brain has been on in microseconds
while True:
brain.screen.set_cursor(1, 1)
brain.screen.clear_screen()
brain.screen.print(brain.timer.system_high_res())
wait(50, MSEC)
подія#
event викликає функцію після закінчення заданого часу.
Usage:
brain.timer.event(callback, delay, arg)
Параметри |
Опис |
|---|---|
|
Функція, яка виконується, коли виникає подія таймера. |
|
Затримка перед викликом функції, у мілісекундах. |
|
Необов’язково. Кортеж, що містить аргументи для передачі функції зворотного виклику. Див. Функції з параметрами для отримання додаткової інформації. |
# Define a function timer_event
def timer_event():
drivetrain.drive_for(FORWARD, 200, MM)
# Drive forward after a 5000 millisecond delay
brain.timer.event(timer_event, 5000)
Конструктори#
Конструктори використовуються для ручного створення об’єктів Timer , які необхідні для створення будь-яких додаткових таймерів, окрім brain.timer.
У наведених нижче прикладах налаштований таймер матиме назву timer_1 і використовуватиметься у всіх наступних прикладах цієї документації API під час посилання на методи класу Timer.
Timer#
Timer створює новий таймер. Timer негайно почне відлік часу з моменту його створення та працюватиме з усіма brain.timer.
Usage:
Timer()
Параметри |
Опис |
|---|---|
Цей конструктор не має параметрів. |
wait(2, SECONDS)
timer_1 = Timer()
while True:
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print("Brain: ")
brain.screen.print(brain.timer.time(SECONDS))
brain.screen.next_row()
brain.screen.print("timer_1: ")
brain.screen.print(timer_1.time(SECONDS))
wait(15, MSEC)