Таймер#

Вступ#

Таймер у VEX GO дозволяє відстежувати час, що минув, і виконувати дії на основі часових інтервалів. Його можна використовувати для вимірювання часу, який займає певна операція, або для скидання часу для нових операцій.

Нижче наведено список усіх методів:

Методи – Керування таймером мозку та взаємодія з ним.

  • reset – Скидає таймер до нуля.

  • time – Повертає, скільки часу минуло.

  • event – Реєструє функцію, яка буде викликана через задану кількість мілісекунд.

Конструктор – Створення додаткових таймерів.

  • Timer – Створює додатковий таймер.

скинути#

reset встановлює таймер на нуль. Це можна використовувати для відліку часу додаткових розділів коду в межах одного проєкту.

Usage:
timer.reset()

Параметри

Опис

Цей метод не має параметрів.

# Build Used: Super Code Base 2.0
def main():
    # Reset the timer when the bumper is pressed
    while True:
        console.clear()
        console.print(timer.time(SECONDS))
        wait(50, MSEC)
        if bumper.is_pressed():
            timer.reset()

# Start threads — Do not delete
start_thread(main)

час#

time повертає час з моменту останнього скидання таймера у вигляді десяткового числа. Таймер автоматично скидається на початку проекту.

Usage:
timer.time(units)

Параметри

Опис

units

Одиниця вимірювання часу: MSEC (за замовчуванням) – мілісекунди або SECONDS

# Build Used: Super Code Base 2.0
def main():
    # Display the time until the bumper is pressed
    while True:
        console.clear()
        console.print(timer.time(SECONDS))
        wait(50, MSEC)
        if bumper.is_pressed():
            timer.reset()

# Start threads — Do not delete
start_thread(main)

подія#

event викликає функцію після закінчення заданого часу.

Usage:
timer.event(callback, delay, arg)

Параметри

Опис

callback

Функція, яка виконується, коли виникає подія таймера.

delay

Затримка перед викликом функції, у мілісекундах.

arg

Необов’язково. Кортеж tuple, що містить аргументи для передачі функції зворотного виклику. Див. Функції з параметрами для отримання додаткової інформації.

# Build Used: Super Code Base 2.0
def timer_event():
    drivetrain.drive_for(FORWARD, 200, MM)

def main():
    # Drive forward after a 5000 millisecond delay
    timer.event(timer_event, 5000)

# Start threads — Do not delete
start_thread(main)

Конструктори#

Timer#

Timer створює новий таймер. Timer негайно почне відлік часу з моменту його створення та працюватиме з усіма timer.

Usage:
my_timer = Timer()

Параметри

Опис

Цей конструктор не має параметрів.

def main():
    # Display the time of two timers
    wait(2, SECONDS)
    timer_1 = Timer()
    while True:
        console.clear()
        console.print("Timer: ", timer.time(SECONDS))
        console.new_line()
        console.print("timer_1: ", timer_1.time(SECONDS))
        wait(15, MSEC)

# Start threads — Do not delete
start_thread(main)