class WDT – bekçi köpeği zamanlayıcısı (watchdog timer)

WDT, uygulama çöktüğünde ve kurtarılamaz bir duruma düştüğünde sistemi yeniden başlatmak için kullanılır. Bir kez başlatıldıktan sonra hiçbir şekilde durdurulamaz veya yeniden yapılandırılamaz. Etkinleştirildikten sonra uygulama, zamanlayıcının süresinin dolmasını ve sistemi sıfırlamasını önlemek için bekçi köpeğini düzenli olarak “beslemelidir”.

STM32 OpenMV kameralarında (M4 / M7 / H7 / H7 Plus / Pure Thermal / N6) ve OpenMV Cam RT1062’de kullanılabilir. OpenMV Cam AE3 (alif portu) üzerinde sunulmaz.

Örnek kullanım:

from machine import WDT
wdt = WDT(timeout=2000)  # enable it with a timeout of 2s
wdt.feed()

Yapıcılar

class machine.WDT(id: int = 0, timeout: int = 5000)

Bir WDT nesnesi oluşturur ve başlatır. timeout milisaniye cinsinden verilir. Bir kez başlatıldıktan sonra bekçi köpeği durdurulamaz; pencereyi çalışma zamanında değiştirmek için timeout_ms() kullanın.

Yöntemler

feed() None

Sistemi sıfırlamasını önlemek için WDT’yi besler. Uygulama bu çağrıyı, WDT’nin yalnızca her şeyin doğru çalıştığı doğrulandıktan sonra beslendiğinden emin olacak mantıklı bir yere yerleştirmelidir.

timeout_ms(timeout: int) None

Bekçi köpeği zaman aşımını timeout milisaniyeye değiştirir ve sayacı yeniden yükler. Birkaç durumdan birinin bir sonraki feed() öncesinde varsayılandan daha uzun bir pencereye ihtiyaç duyduğunda kullanışlıdır. Yeni zaman aşımı hemen etkili olur. Yalnızca STM32.