目錄:1.看門(mén)狗是什么?2.硬件和軟件看門(mén)狗3.硬件看門(mén)狗芯片電路
1.看門(mén)狗是什么?
看門(mén)狗,又叫watchdog timer,是一個(gè)定時(shí)器電路,一般有一個(gè)輸入,叫喂狗(kicking the dog/service the dog),一個(gè)輸出到MCU的RST端。
MCU正常工作的時(shí)候,每隔一段時(shí)間輸出一個(gè)信號(hào)到喂狗端,給 WDT清零,如果超過(guò)規(guī)定的時(shí)間不喂狗(一般在程序跑飛時(shí)),WDT定時(shí)超過(guò),就會(huì)給出一個(gè)復(fù)位信號(hào)到MCU,使MCU復(fù)位,防止MCU死機(jī)。看門(mén)狗的作用就是防止程序發(fā)生死循環(huán),或者說(shuō)程序跑飛。
2.硬件和軟件看門(mén)狗
? 硬件看門(mén)狗
硬件看門(mén)狗是利用了一個(gè)定時(shí)器,來(lái)監(jiān)控主程序的運(yùn)行,也就是說(shuō)在主程序的運(yùn)行過(guò)程中,我們要在定時(shí)時(shí)間到之前對(duì)定時(shí)器進(jìn)行復(fù)位。如果出現(xiàn)死循環(huán),或者說(shuō)PC指針不能回來(lái),那么定時(shí)時(shí)間到后就會(huì)使單片機(jī)復(fù)位。常用的WDT芯片如MAX813,5045,IMP 813等。
? 軟件看門(mén)狗
而在某些情況下,也會(huì)采用純軟件的方法來(lái)設(shè)置看門(mén)狗,如在單片機(jī)系統(tǒng)中,利用閑置的定時(shí)器/計(jì)數(shù)器就可以設(shè)計(jì)一個(gè)軟件看門(mén)狗。具體實(shí)現(xiàn)步驟如下:
首先,在初始化程序中設(shè)置定時(shí)器/計(jì)數(shù)器的方式以控制寄存器(TMOD) 和定時(shí)時(shí)間的初值,并且打開(kāi)中斷。
然后,根據(jù)定時(shí)器的時(shí)間,在主程序中按一定的時(shí)間間隔插入復(fù)位定時(shí)器的指令(喂狗), 兩條喂狗指令之間的時(shí)間間隔可以根據(jù)系統(tǒng)時(shí)鐘與指令周期計(jì)算出來(lái),而且該時(shí)間周期應(yīng)該小于定時(shí)器的定時(shí)時(shí)間。
最后,在定時(shí)器的中斷服務(wù)程序中,設(shè)置一條無(wú)條件轉(zhuǎn)移指令,將程序計(jì)數(shù)器PC轉(zhuǎn)移到初始化程序的入口。
軟件看門(mén)狗的優(yōu)點(diǎn)是無(wú)需額外的硬件支持,但當(dāng)系統(tǒng)存在嚴(yán)重的錯(cuò)誤時(shí)(例如:中斷服務(wù)出錯(cuò)),則有可能導(dǎo)致軟件看門(mén)狗失效。
3.硬件看門(mén)狗芯片電路
看門(mén)狗芯片與MCU的連接關(guān)系如下:其基本的原理就是MCU要在固定的時(shí)間內(nèi)通過(guò)IO翻轉(zhuǎn)去控制看門(mén)狗芯片的WDI引腳,否則看門(mén)狗芯片就會(huì)將WDO拉低,進(jìn)而使CPU復(fù)位。
![pYYBAGSNc0CATRo5AADX3AWKRwA973.png](https://file.elecfans.com/web2/M00/AD/3F/pYYBAGSNc0CATRo5AADX3AWKRwA973.png)
以SP706為例,看門(mén)狗芯片的引腳定義和功能描述如下圖:
![pYYBAGSNc2aAe0ePAAFm_lQFS-0432.png](https://file.elecfans.com/web2/M00/AD/3F/pYYBAGSNc2aAe0ePAAFm_lQFS-0432.png)
這個(gè)MR腳是手動(dòng)復(fù)位,挺有用的,原理圖設(shè)計(jì)時(shí)注意下
![pYYBAGSNc3KAZ3vgAAFdJ4xjO6w219.png](https://file.elecfans.com/web2/M00/AD/3F/pYYBAGSNc3KAZ3vgAAFdJ4xjO6w219.png)
當(dāng)J2接上跳線(xiàn)帽時(shí),開(kāi)啟看門(mén)狗。反之,看門(mén)狗關(guān)閉。
芯片參數(shù)比較少,關(guān)注下最短喂狗時(shí)間Twd 即可:
![poYBAGSNc3yAbOdxAAEU1A_whhc661.png](https://file.elecfans.com/web2/M00/AC/C6/poYBAGSNc3yAbOdxAAEU1A_whhc661.png)
責(zé)任編輯:彭菁
-
芯片
+關(guān)注
關(guān)注
457文章
51298瀏覽量
427871 -
看門(mén)狗
+關(guān)注
關(guān)注
10文章
566瀏覽量
70971 -
硬件
+關(guān)注
關(guān)注
11文章
3406瀏覽量
66499
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
硬件和軟件看門(mén)狗的異同
看門(mén)狗電路的分析
看門(mén)狗電路
![<b class='flag-5'>看門(mén)狗</b><b class='flag-5'>電路</b>](https://file1.elecfans.com//web2/M00/A4/6C/wKgZomUMNCWACnNBAABiyEV1694172.jpg)
X25045 看門(mén)狗電路芯片的電路設(shè)計(jì)
![X25045 <b class='flag-5'>看門(mén)狗</b><b class='flag-5'>電路</b><b class='flag-5'>芯片</b>的<b class='flag-5'>電路</b>設(shè)計(jì)](https://file1.elecfans.com//web2/M00/A4/6C/wKgZomUMNCWAPvkQAAAEArpZxM4581.gif)
看門(mén)狗電路的探討
![<b class='flag-5'>看門(mén)狗</b><b class='flag-5'>電路</b>的探討](https://file.elecfans.com/web2/M00/49/5A/pYYBAGKhtEiAEkVCAAARYzclPSE175.jpg)
軟件看門(mén)狗和硬件看門(mén)狗的作用和區(qū)別
基于STM32、FreeRTOS 實(shí)現(xiàn)硬件看門(mén)狗+軟件看門(mén)狗監(jiān)測(cè)多任務(wù)的方法
看門(mén)狗是什么?硬件看門(mén)狗芯片電路
看門(mén)狗工作原理和電路設(shè)計(jì)
什么是看門(mén)狗,工業(yè)路由器看門(mén)狗技術(shù)的功能優(yōu)勢(shì)
![什么是<b class='flag-5'>看門(mén)狗</b>,工業(yè)路由器<b class='flag-5'>看門(mén)狗</b>技術(shù)的功能優(yōu)勢(shì)](https://file.elecfans.com/web2/M00/4F/E1/pYYBAGLE9fmAcJBIAABOSysc4IA097.png)
評(píng)論