classe Timer – temporizador virtual periódico / de disparo único¶
A classe Timer implementa um temporizador virtual gerido por software que agenda um callback Python uma vez (disparo único) ou repetidamente (periódico) com um determinado período. Use-a quando pretender uma forma portável entre portos e de baixo peso para executar um callback de forma programada – para funcionalidades ao nível do hardware (canais PWM, captura de entrada, modo encoder, tempo morto, entrada de paragem, etc.) use pyb.Timer.
Disponível em todos os portos OpenMV.
Exemplo – callback periódico a 10 Hz:
from machine import Timer
def tick(t):
print("tick")
tim = Timer(-1)
tim.init(period=100, callback=tick) # 100 ms = 10 Hz
Exemplo – executar um callback uma vez após 2 segundos:
from machine import Timer
def fire(t):
print("once")
Timer(-1).init(mode=Timer.ONE_SHOT, period=2000, callback=fire)
Construtores¶
- class machine.Timer(id: int = -1, /, *, mode: int = PERIODIC, period: int = -1, callback: Callable[[Timer], None] | None = None)¶
Constrói um
Timervirtual.iddeve ser-1(o único valor suportado). Quaisquer argumentos de palavra-chave são encaminhados parainit(), de modo a que o temporizador possa ser configurado numa única chamada.Métodos¶
Constantes¶