class WDT – watchdog timer

De WDT wordt gebruikt om het systeem opnieuw te starten wanneer de applicatie crasht en in een onherstelbare toestand belandt. Eenmaal gestart kan deze op geen enkele manier worden gestopt of geherconfigureerd. Na het inschakelen moet de applicatie de watchdog periodiek “voeden” om te voorkomen dat deze verloopt en het systeem reset.

Beschikbaar op STM32 OpenMV-cams (M4 / M7 / H7 / H7 Plus / Pure Thermal / N6) en de OpenMV Cam RT1062. Niet beschikbaar op de OpenMV Cam AE3 (alif-port).

Voorbeeldgebruik:

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

Constructors

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

Maakt een WDT-object aan en start het. timeout wordt opgegeven in milliseconden. Eenmaal gestart kan de watchdog niet meer worden gestopt; gebruik timeout_ms() om het venster tijdens runtime te wijzigen.

Methoden

feed() None

Voedt de WDT om te voorkomen dat deze het systeem reset. De applicatie moet deze aanroep op een zinvolle plek plaatsen, zodat de WDT alleen wordt gevoed na verificatie dat alles correct functioneert.

timeout_ms(timeout: int) None

Wijzigt de watchdog-timeout naar timeout milliseconden en herlaadt de teller. Nuttig wanneer een van meerdere toestanden een langer-dan-standaard venster nodig heeft vóór de volgende feed(). De nieuwe timeout treedt onmiddellijk in werking. Alleen STM32.