class Timer – виртуальный периодический / однократный таймер¶
Класс Timer реализует управляемый программно виртуальный таймер, который планирует вызов Python-функции либо один раз (однократно), либо повторно (периодически) с заданным периодом. Используйте его, когда вам нужен лёгкий межпортовый способ запускать функцию обратного вызова по расписанию – для аппаратных возможностей (каналы PWM, захват входа, режим энкодера, мёртвое время, вход прерывания и т. д.) используйте вместо него pyb.Timer.
Доступен на всех портах OpenMV.
Пример – периодический вызов с частотой 10 Гц:
from machine import Timer
def tick(t):
print("tick")
tim = Timer(-1)
tim.init(period=100, callback=tick) # 100 ms = 10 Hz
Пример – однократный запуск функции обратного вызова через 2 секунды:
from machine import Timer
def fire(t):
print("once")
Timer(-1).init(mode=Timer.ONE_SHOT, period=2000, callback=fire)
Конструкторы¶
- class machine.Timer(id: int = -1, /, *, mode: int = PERIODIC, period: int = -1, callback: Callable[[Timer], None] | None = None)¶
Создаёт виртуальный
Timer.idдолжен быть-1(единственное поддерживаемое значение). Любые именованные аргументы передаются вinit(), чтобы таймер можно было настроить за один вызов.Методы¶
Константы¶