Un watchdog (temporisateur de surveillance) est un circuit matériel dédié qui effectue un compte à rebours continu et doit être réinitialisé périodiquement par le programme principal. Si le logiciel se fige ou entre dans une boucle infinie, il ne parvient pas à réinitialiser le compteur. Dès que le compteur atteint zéro, le watchdog déclenche une réinitialisation matérielle (hard reset) pour ramener le système à un état de fonctionnement connu.
The main loop got stuck waiting for the ADC, so the watchdog kicked in and rebooted the board.
En français simple La boucle principale s'est bloquée en attendant l'ADC, donc le watchdog s'est déclenché et a redémarré la carte.
Les débutants placent souvent la commande de réinitialisation du watchdog à l'intérieur d'une interruption de temporisateur, ce qui va à l'encontre du but recherché, car les interruptions peuvent continuer à s'exécuter même si la boucle principale du programme a planté.
Aussi entendu sous
- watchdog timer
- WDT
Termes associés
Reset button
Un interrupteur physique qui force un circuit ou un microcontrôleur à s'arrêter et à redémarrer son fonctionnement à partir d'un état initial connu.
Hard-reset
Forcer un appareil à redémarrer en interrompant physiquement son alimentation électrique ou en déclenchant une ligne de réinitialisation matérielle dédiée.
Microcontroller
Un circuit intégré compact conçu pour régir une opération spécifique dans un système embarqué.