Taula de continguts:
- Pas 1: Què és aquest temporitzador de vigilància?
- Pas 2: Com s'activa el temporitzador del gos de vigilància?
- Pas 3: manteniu el programa en execució
- Pas 4: exemple d’ús
- Pas 5: problemes de temporitzador de vigilància
- Pas 6: gaudiu
Vídeo: The Arduino Hang Guardian - Tutorial del temporitzador Arduino Watchdog: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
Hola a tothom, Ens passa a tots. Creeu un projecte, connecteu amb entusiasme tots els sensors i, de sobte, l’Arduino es bloqueja i no es processa cap entrada.
"Què passa?", Us preguntareu i començareu a explorar el vostre codi, només per adonar-vos que us heu quedat atrapats en un bucle infinit. Gràcies a Déu, l’Arduino era al vostre banc i no en un lloc remot.
Avui veurem com podem utilitzar el temporitzador de gossos de vigilància a l’Arduino per evitar que això passi.
Pas 1: Què és aquest temporitzador de vigilància?
El temporitzador Arduino, tal com indica el nom, és un temporitzador que s’executa per separat de la CPU principal de la placa. Aquest temporitzador es pot utilitzar per comprovar periòdicament l’estat de la placa i, en les circumstàncies en què la placa es va quedar atrapada en un bucle de programari o es va quedar atrapada a causa d’un error de maquinari, el temporitzador del gos de vigilància pot restablir l’Arduino i fer-lo tornar a començar de nou.
Per defecte, quan no s’utilitza, aquest temporitzador està desactivat en tots els projectes i només quan l’habilitem, hem d’assegurar-nos de comunicar-li periòdicament que no restableixi la nostra placa si continua funcionant com s’esperava.
Per poder utilitzar el temporitzador de vigilància, primer hem d’incloure el fitxer avr / wdt.h al nostre esbós d’Arduino. Aquesta és la biblioteca estàndard que conté les accions de vigilància.
Pas 2: Com s'activa el temporitzador del gos de vigilància?
Per activar el temporitzador, fem servir la funció "wdt_enable" on hem de passar en l'interval de llindar en què es restablirà la placa. Depenent del nostre cas d'ús, pot ser des de 15 mil·lisegons fins a 8 segons en configuracions predefinides que es troben a la biblioteca de vigilància.
LLIMI: NOM CONSTANT
15 ms WDTO_15MS 30 ms WDTO_30MS 60 ms WDTO_60MS 120 ms WDTO_120MS 250 ms WDTO_250MS 500 ms WDTO_500MS 1s WDTO_1S 2s WDTO_2S 4s WDTO_4S 8s WDTO_8S
Pas 3: manteniu el programa en execució
Ara, amb el temporitzador activat, per evitar que es restableixi el nostre Arduino, hem de trucar periòdicament a la funció "wdt_reset" per restablir el temporitzador de vigilància abans que caduqui l'interval de llindar.
A l’hora d’escollir un interval de restabliment, és crucial que tinguem en compte qualsevol operació llarga com llegir o enviar dades o connectar-nos a sensors externs. El llindar de restabliment ha de ser almenys una vegada i mitja superior a aquests temps per evitar restabliments accidentals.
Pas 4: exemple d’ús
En el programa d’exemple que podeu descarregar aquí, primer configurem el temporitzador del gos de vigilància amb un interval de restabliment de 4 segons. Aleshores, per saber que estem en la funció de configuració, parpellegem un LED 3 vegades ràpidament i, al bucle principal, primer restablim el temporitzador, encenem un LED amb intervals progressivament més llargs i després l’apaguem. El següent bucle restableix el temporitzador de nou fins que el temps d’encesa sigui superior a 4 segons.
Quan això passa, el temporitzador de vigilància restableix el tauler i la configuració es torna a executar.
Pas 5: problemes de temporitzador de vigilància
Un possible problema amb el temporitzador watchdog, depenent del carregador d’arrencada del vostre Arduino, és que si el valor del temporitzador watchdog és massa baix i el carregador d’arrencada no restableix el temporitzador quan pengeu un codi nou, podeu acabar danyant la placa Arduino de manera que sempre quedarà bloquejat en la fase d'arrencada. El carregador d’arrencada intentarà arrencar, però el temporitzador continuarà restablint la placa, sense permetre que s’iniciï correctament. Per evitar problemes com aquest, assegureu-vos d'utilitzar sempre intervals llindars de 2 segons o més.
Pas 6: gaudiu
Si teniu un exemple d’on heu utilitzat el temporitzador de vigilància en un projecte real, feu-m’ho saber als comentaris, assegureu-vos que m’agrada el vídeo i no us oblideu de subscriure-us.
Ànims i gràcies per llegir / mirar!
Recomanat:
Bloqueig central del cotxe indi Ncu Mcu amb desbloqueig del temporitzador Rfid i Blynk: 9 passos
Bloqueig central del cotxe indi Node Mcu amb desbloqueig del temporitzador Rfid i Blynk: avui us mostro un pany central completament automatitzat amb cotxe d’estil indi amb control rfid blynk wifi wifi i desbloqueig del temps, també té totes les característiques d’un pany central normal. pany central FUNCIONA L'ACTIVACIÓ OFFLINE NECESSITA PANYS DE XARXA I
Com fer un bricolatge Arduino temporitzador de rentat de 30 segons, ATURAR LA DIFUSIÓ DEL CÀVID: 8 passos
Com fer un bricolatge Arduino temporitzador de rentat de 30 segons, PAREU de la propagació del còvid: hola
Motor pas a pas amb xancletes D i temporitzador 555; la primera part del circuit el temporitzador 555: 3 passos
Motor pas a pas amb xancletes D i temporitzador 555; la primera part del circuit el temporitzador 555: el motor pas a pas és un motor de corrent continu que es mou en passos discrets. S’utilitza sovint en impressores i fins i tot en robòtica. L’explicaré en passos. La primera part del circuit és un 555 temporitzador. És la primera imatge (vegeu més amunt) amb un xip 555 amb
Microcontrolador AVR. LED intermitents mitjançant el temporitzador. Interruptors temporitzadors. Mode temporitzador CTC: 6 passos
Microcontrolador AVR. LED intermitents mitjançant temporitzador. Interruptors temporitzadors. Mode temporitzador CTC: Hola a tots! Els temporitzadors són un concepte important en el camp de l'electrònica. Tots els components electrònics funcionen en una base de temps. Aquesta base de temps ajuda a mantenir tot el treball sincronitzat. Tots els microcontroladors funcionen a una freqüència de rellotge predefinida, el
Temporitzador NE555 - Configuració del temporitzador NE555 en una configuració Astable: 7 passos
Temporitzador NE555 | Configuració del temporitzador NE555 en una configuració astable: el temporitzador NE555 és un dels circuits integrats més utilitzats al món de l’electrònica. Té la forma de DIP 8, és a dir, que inclou 8 pins