23 giugno 11, 21:28 | #41 (permalink) Top | |
Adv Moderator Data registr.: 15-08-2007 Residenza: sto a Massa ma sono molto Positivo
Messaggi: 12.069
| Citazione:
Il watchdog non è un programma.... Se abiliti il watchdog (flag di programmazione) non fai altro che consentire a un timer hardware di andare a incrementare un counter (hardware). Se a software (ovvero nel programma che viene inserito nella CPU) non prevedi il reset di questo contatore, sull'overflow del contatore hardware viene attivata la linea di reset della CPU... Quindi il software funziona solo per inibire il reset non per generarlo... Tant'è che un errore di programmazione abbastanza banale consiste nell'abilitazione del watchdog senza che a codice si sia prevista la sua gestione ovvero reset continuo... Per avere un watchdog che non funziona dovrebbero aver sbagliato il design hardware della CPU... Se fosse software verrebbe a cadere il concetto stesso di watchdog... | |
23 giugno 11, 22:08 | #42 (permalink) Top | |
User Data registr.: 25-07-2004 Residenza: Trieste
Messaggi: 5.652
| Citazione:
Sono pienamente d'accordo sulle vostre risposte, anche perchè in passato ho usato molte volte la funzione watchdog. Quello che mi sembra di capire nei microprocessori, è che la possibilità di saltare a un indirizzo di reset (o ad altra rutine), quando un contatore lo permette, questa, è una funzione software implementata nel micro. Scusatemi se sbaglio. Naraj. | |
23 giugno 11, 22:47 | #43 (permalink) Top | |
Adv Moderator Data registr.: 15-08-2007 Residenza: sto a Massa ma sono molto Positivo
Messaggi: 12.069
| Citazione:
L'interrupt che gestisce il salto alla routine di reset del contatore è gestito a volte a software e come tale se il software o il micro si sono piantati il salto non avviene... Ma proprio per quello c'è il watchdog... se il salto non avviene il contatore continua a crescere (cosa che normalmente non dovrebbe avvenire), crescendo troppo scatta il reset della CPU e questo avviene in hardware... Da non confondere i due reset ben diversi fra loro... | |
23 giugno 11, 23:13 | #44 (permalink) Top |
User Data registr.: 19-01-2007 Residenza: Dintorni di mestre (DINTORNI)
Messaggi: 2.574
|
l'uso del Watchdog Timer è molto, ma molto utile.... per dire fatti vissuti... Sottomarino con scheda di controllo autocostruita basata su arduino!!!! In laboratorio/taverna tutto funzionava perfettamente!!! Vado al laghetto e, dopo circa 10 minuti di prove, il motore e la pompa (che veniva gestito dall'arduino) si bloccano sull'ultimo comando ricevuto, cioè motore avanti e pompa in immersione.... Non è bello cercare di recuperare un sottomarino vedendo che và sempre più sotto!!!! Cos'e successo??? semplice... sbalzi di tensione sull'alimentazione mi ha bloccato l'arduino!!!! Risolto in 2 modi: pulendo l'alimentazione da schifezze attivando il wathdog timer!!!! In questo modo, se l'arduino si blocca, dopo circa 2 secondi si resetta e non mi ritrovo il sottomarino senza controllo!!!!! Comunque si, il watchdog timer è un contatore Hardware, controllabile da software nato con un unico scopo: se il software non blocca il contatore in tempo (tipo quando si blocca il programma), lui resetta il micro, come se lo avessi appena acceso!!!! |
23 giugno 11, 23:19 | #45 (permalink) Top |
User Data registr.: 06-09-2008
Messaggi: 11.388
|
La questione watch-dog è più semplice di quello che si può pensare. Andando per ordine, questa tecnica prevede due blocchi funzionali: l'ascolto e l'esecuzione. Per quanto apparentemente complessa è invece realizzabile da sempre in modo semplicemente hardware perchè deve essere l'hardware e trarre d'impaccio, teoricamente parlando, il software in crash. Per applicare tale tecnica, basta che il software produca un'onda quadra su un bit che subito un circuito esterno, se non lo rileva come lo attende, applica un bit di reset sul relativo piedino del processore. Ovvio che il software è deputato a muovere un bit esterno (cosa d'altronde di una semplcità disarmante) ma il lavoro di ascolto ed esecuzione del reset è a cura del circuito hardware storicamente esterno al processore. Oggi con l'evoluzione dei processori è possibile inserirla direttamente nei microcontrollori ma un watch-dog resta cmq. una funzione hardware a se stante.
__________________ "If flying were the language of man, soaring would be its poetry." |
Bookmarks |
| |
Discussioni simili | ||||
Discussione | Autore discussione | Forum | Commenti | Ultimo Commento |
Dubbi su rx 2,4ghz!! | dadasco | Radiocomandi | 2 | 15 giugno 11 20:10 |
Optic 6 - 2,4GHz Spectra a 2,4GHz Corona DSSS | halfi | Radiocomandi | 3 | 06 novembre 10 21:45 |
Con una trasmittente 2.4ghz posso usare qualsiasi ricevente 2.4ghz? | searchworlds | Radiocomandi | 5 | 12 novembre 09 20:23 |
corona 2.4Ghz - Dubbi atroci... | il_Zott | Radiocomandi | 0 | 18 maggio 09 10:50 |
Jeti 2.4GHz - Richiamo su Moduli DUPLEX Tx 2,4GHz (TU, TF, TG, TGi) | nigel_uno | Radiocomandi | 7 | 16 marzo 09 08:01 |