class Timer -- مؤقت دوري / أحادي الطلقة افتراضي¶
تنفّذ الفئة Timer مؤقتًا افتراضيًا مُدارًا برمجيًا يجدول دالة رد نداء بلغة Python إما مرة واحدة (أحادي الطلقة) أو بشكل متكرر (دوري) عند فترة معطاة. استخدمها عندما تريد طريقة خفيفة قابلة للنقل بين المنافذ لتشغيل دالة رد نداء وفق جدول -- وللميزات على مستوى العتاد (قنوات PWM، التقاط الإدخال، وضع المُرمِّز، الوقت الميت، إدخال الكسر، إلخ) استخدم pyb.Timer بدلًا منها.
متاح على كل منافذ OpenMV.
مثال -- دالة رد نداء دورية بتردد 10 Hz:
from machine import Timer
def tick(t):
print("tick")
tim = Timer(-1)
tim.init(period=100, callback=tick) # 100 ms = 10 Hz
مثال -- تشغيل دالة رد نداء مرة واحدة بعد ثانيتين:
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()بحيث يمكن تكوين المؤقت في استدعاء واحد.الطرق¶
الثوابت¶