Timer#
Introduction#
The Timer in VEX IQ (2nd Gen) allows you to track elapsed time and perform actions based on time intervals. With various methods for time management, you can create precise and timed operations within your program.
Below is a list of all methods:
Methods – Control and interact with the Brain’s timer.
time – Returns the elapsed time since the project started.
clear – Resets the timer to zero.
system – Returns the number of milliseconds the Brain has been powered on.
system_high_res – Returns the number of microseconds the Brain has been powered on.
event – Calls a function after a specified number of milliseconds, with optional arguments.
Constructor – Create additional timers.
Timer – Creates an additional timer.
time#
time
returns the current elapsed time of the timer in the specified units — an integer for MSEC
or a float for SECONDS
.
Usage:
brain.timer.time(units)
Parameters |
Description |
---|---|
|
The time units are milliseconds |
# 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#
clear
sets the timer to zero.
Usage:
brain.timer.clear()
Parameters |
Description |
---|---|
This method has no parameters. |
# 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#
system
returns the number of milliseconds the Brain has been powered on.
Usage:
brain.timer.system()
Parameters |
Description |
---|---|
This method has no parameters. |
# 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#
system_high_res
returns the number of microseconds the Brain has been powered on.
Usage:
brain.timer.system_high_res()
Parameters |
Description |
---|---|
This method has no parameters. |
# 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#
event
calls a function after a specified amount of time.
Usage:
brain.timer.event(callback, delay, arg)
Parameters |
Description |
---|---|
|
A function to execute when the timer event occurs. |
|
The delay before the function is called, in milliseconds. |
|
Optional. A tuple containing arguments to pass to the callback function. See Functions with Parameters for more information. |
# 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)
Constructors#
Constructors are used to manually create Timer
objects, which are necessary for creating any additional timers besides brain.timer
.
For the examples below, the configured Timer will be named timer_1
and will be used in all subsequent examples throughout this API documentation when referring to Timer
class methods.
Timer#
Timer
creates a new timer. A Timer
object will immediately begin counting the moment it is created and will work with all brain.timer
methods.
Usage:
Timer()
Parameters |
Description |
---|---|
This constructor has no parameters. |
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)