Temporizador#
Introdução#
O temporizador do VEX IQ (2ª geração) permite monitorizar o tempo decorrido e executar ações com base em intervalos de tempo. Pode ser utilizado para medir a duração de uma tarefa ou para repor o temporizador para novas operações.
Segue-se uma lista de todos os métodos:
Métodos — Controlar e interagir com o temporizador do cérebro.
time— Devolve quanto tempo passou.clear— Repõe o temporizador a zero.system— Retorna o número de milissegundos em que o Brain esteve ligado.system_high_res— Retorna o número de microssegundos em que o Brain esteve ligado.event— Regista uma função a ser chamada após um número de milissegundos especificado.
Construtor — Criar temporizadores adicionais.
Timer— Cria um temporizador adicional.
hora#
O valor time em formato decimal. O temporizador é reiniciado automaticamente no início de um projeto.
Usage:
brain.timer.time(units)
Parâmetros |
Descrição |
|---|---|
|
A unidade que representa o tempo: |
# 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)
claro#
clear coloca o temporizador a zero. Isto pode ser utilizado para cronometrar secções adicionais de código dentro do mesmo projeto.
Usage:
brain.timer.clear()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
# 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()
sistema#
system devolve o número de milissegundos em que o cérebro esteve ligado.
Usage:
brain.timer.system()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
# 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)
sistema_alta_resolução#
system_high_res devolve o número de microssegundos em que o cérebro esteve ligado.
Usage:
brain.timer.system_high_res()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
# 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)
evento#
O evento event chama uma função após um determinado período de tempo.
Usage:
brain.timer.event(callback, delay, arg)
Parâmetros |
Descrição |
|---|---|
|
Uma função a ser executada quando o evento do temporizador ocorrer. |
|
O atraso antes da chamada da função, em milissegundos. |
|
Opcional. Uma tupla contendo argumentos para passar para a função de callback. Consulte Funções com Parâmetros para obter mais informações. |
# 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)
Construtores#
Os construtores são utilizados para criar manualmente Timer , que são necessários para criar quaisquer temporizadores adicionais para além de brain.timer.
Nos exemplos abaixo, o Timer configurado terá o nome timer_1 e será utilizado em todos os exemplos subsequentes ao longo desta documentação da API quando se referir os métodos da classe Timer.
Timer#
Timer cria um novo temporizador. Um objeto Timer começará a contar imediatamente no momento em que é criado e funcionará com todos os brain.timer.
Usage:
Timer()
Parâmetros |
Descrição |
|---|---|
Este construtor não possui parâmetros. |
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)