classe WDT – minuteur de surveillance (watchdog)

Le WDT est utilisé pour redémarrer le système lorsque l’application plante et se retrouve dans un état non récupérable. Une fois démarré, il ne peut être arrêté ni reconfiguré d’aucune façon. Après activation, l’application doit « nourrir » le watchdog périodiquement afin de l’empêcher d’expirer et de réinitialiser le système.

Disponible sur les caméras OpenMV STM32 (M4 / M7 / H7 / H7 Plus / Pure Thermal / N6) et l’OpenMV Cam RT1062. Non exposé sur l’OpenMV Cam AE3 (port alif).

Exemple d’utilisation

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

Constructeurs

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

Crée un objet WDT et le démarre. timeout est donné en millisecondes. Une fois démarré, le watchdog ne peut pas être arrêté ; utilisez timeout_ms() pour modifier la fenêtre à l’exécution.

Méthodes

feed() None

Nourrit le WDT pour l’empêcher de réinitialiser le système. L’application devrait placer cet appel à un endroit judicieux, en s’assurant que le WDT n’est nourri qu’après avoir vérifié que tout fonctionne correctement.

timeout_ms(timeout: int) None

Modifie le délai d’expiration du watchdog à timeout millisecondes et recharge le compteur. Utile lorsqu’un parmi plusieurs états nécessite une fenêtre plus longue que celle par défaut avant le prochain feed(). Le nouveau délai prend effet immédiatement. STM32 uniquement.