klasa Timer – wirtualny licznik czasu okresowy / jednorazowy¶
Klasa Timer implementuje zarządzany programowo wirtualny licznik czasu, który planuje wywołanie zwrotne Pythona jednorazowo (one-shot) lub wielokrotnie (okresowo) w zadanym okresie. Używaj jej, gdy potrzebujesz lekkiego, przenośnego między portami sposobu uruchamiania wywołania zwrotnego według harmonogramu – dla funkcji na poziomie sprzętowym (kanały PWM, przechwytywanie wejścia, tryb enkodera, czas martwy, wejście break itd.) używaj zamiast tego pyb.Timer.
Dostępne na każdym porcie OpenMV.
Przykład – okresowe wywołanie zwrotne 10 Hz:
from machine import Timer
def tick(t):
print("tick")
tim = Timer(-1)
tim.init(period=100, callback=tick) # 100 ms = 10 Hz
Przykład – uruchomienie wywołania zwrotnego jednorazowo po 2 sekundach:
from machine import Timer
def fire(t):
print("once")
Timer(-1).init(mode=Timer.ONE_SHOT, period=2000, callback=fire)
Konstruktory¶
- class machine.Timer(id: int = -1, /, *, mode: int = PERIODIC, period: int = -1, callback: Callable[[Timer], None] | None = None)¶
Konstruuje wirtualny
Timer.idmusi wynosić-1(jedyna obsługiwana wartość). Wszelkie argumenty nazwane są przekazywane doinit(), dzięki czemu licznik czasu można skonfigurować w jednym wywołaniu.Metody¶
Stałe¶