Watchdog timer v PIC

E

elexhobby

Guest
Môže mi niekto prosím vysvetlite mi pojem watchdog časovač do PIC?
Čo to robí?Hovorí sa, že pred spaním watchdog časovač by mali byť vymazané, & to môže prebudiť zo spánku uC.Ale ako sa rozhodne, oneskorenie, po ktorom by mal prebudiť uC?
Nemôžem tomu nerozumiem, prečo Watchdog timer treba sa prebudiť uC, ak iné prerušenie môže.
Tiež je tu ďalší geniálny použitie Watchdog timer okrem počas spánku prevádzky.
Čítal som, že to resetuje uC, kedykoľvek to ide v nekonečnej slučke.
Ale ako sa watchdog časovač inintiate sám (ako to vie, že sa zrútil uC).Ak sa môj program skladá z pravidelnej činnosti, teda prenos dát sériovo, môže watchdog časovač pocit, je to nekonečné slučky - pretože som opakovanie rovnakého úlohy.
V takomto prípade nebude mať programátor bolesti hlavy neustále resetovanie watchdog časovač po každých pár inštrukcií, aby sa zabránilo resetovania uC
Kindly help

 
Osobne hasło do każdego internetowego konta to jeden z filarów bezpieczeństwa w sieci. Ważne też, aby hasła były skomplikowane, składające się z cyfr ...

Read more...
 
Ahoj,

V mojom chápaní a čítanie, watchdog časovač (a to nielen pre PIC všeobecne) je nezávislý časovač, ktorý stále beží bez ohľadu na to, čo vaše uC robí.Zvyčajne je založený na hodiny nadradeného systému a môže byť zmenšený, aby zvýšila svoje doby.

V niektorých prípadoch, watchdog časovač je veľmi užitočná.Napríklad, to môže používať na spustenie o udalostiach, ktoré pravidelne ei pri pretečenia časovača.Napríklad, chcete uC niečo urobiť v každej 1 milisekundu, alebo áno, môžete si prescale watchdog časovač, aby bolo v každom overfolw milisekundu - teda úspora z kódovanie meškanie podprogramy a pamäti.Really Neat.

Ale myslím, že dôležitejšie funkciu časovača Watchdog je zistiť, či váš masterclock beží správne.Mimo interfernces môže spôsobiť, že pán si hodiny spomaliť alebo dokonca vypnutie.

Môžete jednoducho ignorovať tento watchdog časovač, ak dont chcete používať dvoma spôsobmi:
a.) Zakázať všetky prerušenia, v predvolenom nastavení všetky prerušenia sú vypnuté.Watchdog Timer Viac Flow (WDTO) je softvérové prerušenia.
b.) inicializácii v kóde, ktorý Watchdog timer je zakázané.

VďakaZnie 7 minút:Stiahol som si to von z jedného z mojich PIC ebooks

1.7 Watchdog
Ešte jedna vec je si vyžaduje našu pozornosť, je bezchybné fungovanie mikrokontroléru
počas jeho run-time.Predpokladajme, že v dôsledku nejakej rušenia (čo sa často vyskytujú v priemysle), náš mikroprocesor zastaví spustení programu, alebo horšie, začne pracovať správne.

Samozrejme, keď sa to stane s počítačom, jednoducho ju resetovať a bude pokračovať v práci.Avšak, nie je tlačidlo reset, môžeme tlačiť na mikrokontroléru a tým vyriešiť náš problém.Na prekonanie tejto prekážky, je potrebné zaviesť ďalší blok nazvaný strážneho psa.Tento blok je v skutočnosti iný voľný-li v rozpore s našimi programovými potrebuje napísať nulu v každej dobe, kedy vykonáva správne.V prípade, že program dostane "prilepený", bude nula nemôže byť napísaný v, a proti samotnej reset mikrokontroléru po dosiahnutie svojej maximálnej hodnoty.To bude mať za následok spustenie programu znovu a tentoraz správne.To je dôležitým prvkom každého programu je spoľahlivá bez dohľadu človeka.

 
Many Thanks for ur pomôcť.Teraz mám lepšiu predstavu o účele WDT.
Ale ja mám niekoľko pochybností ...Je-li jeden program cyklus je dlhší ako pretečenie časovača WDT obdobie, sú dve CLRWDT inštrukcie používa?
Program ak uviazne vnútri slučky, ktorá obsahuje inštrukcie CLRWDT by nebolo reset PIC, že jo?
Tiež môžem WDT ako štvrtý časovač (Viem, že by to bolo zriedkavé) a písanie rutinné prerušenie prevádzky na 0000h sama kontroluje stav TO (bar) štatút registra zistiť, či došlo k pretečeniu WDT?Vzhľadom k tomu, že je hrubý oscilátora, nemožno ho použiť ako presný časovač ..

 
V každom mikrokontrolér, watchdog je časovač, ktorý má obnoviť mikro-li časový limit.Strážna funkcia je teda zistiť, či mikro odišla "šialený" a resetovať.
Je to podobné ako v počítači robiť niečo vtipného a vaše resetovania, keď vidíte, nie je nič iného môžete urobiť, aby ho späť pod kontrolu.
V vstavaný systém, pretože nie je nikto okolo, táto funkcia patrí watchdog časovač.

Vedieť, budete používať WDT, napíšete svoj program tak, aby reset WDT dosť často mu zabránil resetovanie mikro za normálnych podmienok.Napríklad pre PIC, doba je 18ms.Takže si buďte istí, že návrat ot CLRWDT výučba v čase kratšia ako 18ms.Ak nie, vložte ďalší CLRWDT.I keď to nie je moc vhodné.V ideálnom prípade by ste mali mať iba jednu CLRWDT inštrukcie, ktorá sa nachádza v hlavnej slučke.Tak, ak sa program zasekne, bude WDT reset mikro.

V PIC, môžu využiť WDT 8-bitové Prescaler (pozri PSA bit) na zvýšenie časového limitu.Prescaler môžu byť priradené buď TMR0 alebo WDT, tak musíte byť opatrní tu.Ak naozaj potrebujete pre TMR0, potom sa musíte postarať o WDT do 18ms (v skutočnosti menej ako to, že keďže tolerancia k WDT je veľká, minimum je okolo 9ms, ak sa nemýlim. Ale to by byť žiadny problém, since i na 1MHz PIC bude vykonávať avout 9000 v rámci týchto usmernení 9ms).

Osobitná pozornosť sa má venovať čakať slučky.Ak sa čakacia doba nemožno určiť, budete musieť zahrnúť CLRWDT v tejto slučke.I keď, ako ste správne povedal, že je nebezpečné, pretože ak mikro uviazne v takejto slučke WDT nebude resetovať.Takže venovať osobitnú pozornosť týmto slučiek, sa uistite, že program nemôže uviaznuť tam.Alebo použite funkciu timeout, obmedziť čas strávený v slučke, ak je to možné.

Čo sa mi páči WDT na PIC je, že utečie samostatné RC oscilátor, ktorý nemá nič spoločného s hlavné systémové hodiny, takže WDT bude fungovať bez ohľadu na to, čo.
Čo nemám rada o WDT PIC je, že to funguje aj v režime spánku.Niekedy je to žiaduce, ale niekedy to nie je.Myslím, že sa to skutočne nezávislý, takže stačí, aby s tým žiť.

Mimochodom, je WDT nemal byť používaný ako časovač, nespoliehajte na svoju dobu.Malo by byť nikdy nedovolili obnoviť mikro, s výnimkou v režime spánku.A potom si test zdroj prebudení, a ak zistíte, že bol WDT, stačí ísť spať.

 
hai

WDT sa používa na udržanie funkcie správcu bez hangng
povaha WDT je osvoja jasné, správca pretiekla, keď dostane to.
tak sekvencie budeme jasné, WDT, ako to bude pretečie.
to sa vykonáva pomocou akéhokoľvek časovač.
V niektorých prípadoch regulátor bude visieť, zároveň WDT nezískajú zastavený ešte to bude trvať a dostane prepad, pretože správca obesený.tak zaplavili WDT resetuje radič a radič začne fungovať od pôvodu

 

Welcome to EDABoard.com

Sponsor

Back
Top