Gestion de l'horloge de surveillance sur Arduino
En électronique et par extension en informatique, le chien de garde est une ressource qui permet à un appareil physique ou à une application de redémarrer lorsqu'il cesse de fonctionner normalement. Plus précisément, en ce qui concerne les microcontrôleurs, il s'agit d'un compte à rebours qui produit une réinitialisation en cas de débordement.
Logiquement, l'appareil ne sait pas quand il cesse de fonctionner correctement, le principe de fonctionnement est d'empêcher la fin du compte à rebours et donc la réinitialisation du système. Pour ce faire, d'abord l'intervalle de temps pendant lequel le redémarrage a lieu est configuré, et d'autre part cette valeur est actualisée, indiquant ainsi que l'appareil fonctionne correctement et ne doit pas être redémarré pour le moment.
Pour gérer le chien de garde avec Arduino la bibliothèque doit être utilisée et seulement trois fonctions : pour le désactiver lors de la configuration du temps de réinitialisation, qui configure et active le chien de garde à l'heure indiquée en paramètre (heure) et qui renouvelle l'intervalle compté par le chien de garde.
1
2
3
4
5
6
7
8
9
10
11
12
|
#include <avr/wdt.h> // Incluir la librería que contiene el watchdog (wdt.h)
void setup()
{
wdt_disable(); // Desactivar el watchdog mientras se configura
wdt_enable(WDTO_2S); // Configurar a dos segundos
}
void loop()
{
wdt_reset(); // Actualizar el watchdog para que no produzca un reinicio
}
|
Constantes pouvant être utilisées avec
pour régler le temps du compte à rebours sont :- = 15 millisecondes
- = 30 millisecondes
- = 60 millisecondes
- = 120 millisecondes
- = 250 millisecondes
- = 500 millisecondes
- = 1 seconde
- = 2 secondes
- = 4 secondes
- = 8 secondes
Avant d'utiliser le chien de garde, il est important de s'assurer que le chargeur de démarrage Qu'est-ce que le microcontrôleur sur la carte ? Arduino qui est utilisé a prévu l'utilisation de cette ressource. Il y a une erreur connue dans les plaques du Arduino Mega 2560 qui ont été laissés en suspens précisément avec des programmes utilisant le chien de garde.
Pour en savoir plus sur ce qu'est un chargeur de démarrage ou gestionnaire de démarrage et comment en enregistrer un autre que celui fourni avec votre plaque, vous pouvez consulter le article sur les méthodes de programmation des microcontrôleurs Atmel.
Poster un commentaire