成人国产精品,91乱视频在线观看,免费观看18禁91免费,日本高清不卡在线观看播放

首頁(yè)
產(chǎn)品
卓越 ? 易用 ? 可靠
視頻
讓中國(guó)物聯(lián)網(wǎng)領(lǐng)先世界
搜索
歷史搜索
搜索發(fā)現(xiàn)

看門(mén)狗程序是什么?

2023-01-30 09:47:01| 來(lái)源:聚英電子| | 0

  在購(gòu)買(mǎi)路由器等物聯(lián)網(wǎng)設(shè)備時(shí),都看到看門(mén)狗這項(xiàng)功能,那么,看門(mén)狗是真的狗嗎?答案肯定不是,看門(mén)狗機(jī)制是什么呢?聚英電子來(lái)給您解答。

看門(mén)狗機(jī)制是什么呢?

  看門(mén)狗,又叫 watchdog timer,是一個(gè)定時(shí)器電路, 一般有一個(gè)輸入,叫喂狗,一個(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ō)程序跑飛。

  在系統(tǒng)運(yùn)行以后也就啟動(dòng)了看門(mén)狗的計(jì)數(shù)器,看門(mén)狗就開(kāi)始自動(dòng)計(jì)數(shù),如果到了一定的時(shí)間還不去清看門(mén)狗,那么看門(mén)狗計(jì)數(shù)器就會(huì)溢出從而引起看門(mén)狗中斷,造成系統(tǒng)復(fù)位。所以在使用有看門(mén)狗的芯片時(shí)要注意清看門(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ù)位。

  工作原理:

  1、看門(mén)狗是一個(gè)用獨(dú)立時(shí)鐘源提供的脈沖進(jìn)行累加計(jì)數(shù)的計(jì)數(shù)器,無(wú)需任何外部元件;

  2、獨(dú)立的RC時(shí)鐘信號(hào)源是指RC振蕩器與OSC1引腳的外接RC振蕩器,OSC1和OSC2外接晶體振蕩器或陶瓷諧振器構(gòu)成的單片機(jī)系統(tǒng)時(shí)鐘是分離的,這就意味著,即使單片機(jī)進(jìn)入系統(tǒng)時(shí)鐘停振的睡眠狀態(tài),監(jiān)視計(jì)時(shí)器仍然能夠運(yùn)行;

看門(mén)狗的原理

  3、在單片機(jī)執(zhí)行程序期間,一次看門(mén)狗定時(shí)器超時(shí)溢出,將使單片機(jī)產(chǎn)生復(fù)位操作,如果單片機(jī)處于睡眠狀態(tài),一次看門(mén)狗定時(shí)器超時(shí)溢出將使單片機(jī)被喚醒,恢復(fù)正常運(yùn)行狀態(tài),并且繼續(xù)執(zhí)行在進(jìn)入睡眠之前被擱置的程序;

  4、每次看門(mén)狗定時(shí)器超時(shí)溢出,都會(huì)使得狀態(tài)條件寄存器中的TO位被清0,以記錄曾經(jīng)發(fā)生的這次看門(mén)狗溢出事件,供作程序查詢(xún)判斷用;

  5、當(dāng)監(jiān)視計(jì)時(shí)器等于O時(shí),看門(mén)狗定時(shí)器將被永久禁止,當(dāng)監(jiān)視計(jì)時(shí)器等于1時(shí),看門(mén)狗定時(shí)器將被永久啟用。

  硬件看門(mén)狗的主體是個(gè)定時(shí)電路,并由被監(jiān)控CPU提供周期性“喂狗”信號(hào),對(duì)定時(shí)器清零(俗稱(chēng)“清狗”)。CPU正常作時(shí),由于能定時(shí)“清狗”,看門(mén)狗內(nèi)的定時(shí)器不會(huì)溢出。當(dāng)CPU出現(xiàn)故障,則不能繼續(xù)提供“清狗”信號(hào),使得看門(mén)狗內(nèi)定時(shí)器不斷累加溢出,從觸發(fā)個(gè)復(fù)位信號(hào)對(duì)CPU進(jìn)復(fù)位,使CPU重新運(yùn)作。

  一般來(lái)說(shuō),看門(mén)狗也叫“看門(mén)狗定時(shí)器”!為什么叫定時(shí)器呢?因?yàn)槲覀円部梢园阉斫獬啥〞r(shí)器。在使用的時(shí)候可以給他一個(gè)值,讓他在程序啟動(dòng)后啟動(dòng)后開(kāi)始定時(shí)。常見(jiàn)有以下兩種或情況:

  1、系統(tǒng)復(fù)位:在看門(mén)狗函數(shù)中設(shè)置一個(gè)函數(shù),每間隔一段時(shí)間發(fā)送給CPU一次復(fù)位信號(hào),CPU進(jìn)行復(fù)位操作。

  2、如果系統(tǒng)正常運(yùn)行不想讓系統(tǒng)產(chǎn)生復(fù)位:

  程序正常啟動(dòng),定時(shí)器開(kāi)始,初始值減小,判斷初始值是否為0,如果為0、給CPU發(fā)送復(fù)位信號(hào),我們可以重置看門(mén)狗,簡(jiǎn)稱(chēng)喂狗,讓其繼續(xù)檢測(cè)等待下一次投喂。

  反之,計(jì)數(shù)器重置重新計(jì)數(shù),這個(gè)過(guò)程稱(chēng)為清狗操作。

  當(dāng)沒(méi)有東西可以喂狗時(shí),CPU就會(huì)收到復(fù)位信號(hào),系統(tǒng)復(fù)位重新運(yùn)行。

  在系統(tǒng)運(yùn)行以后,定時(shí)器就會(huì)被啟動(dòng),如果到時(shí)間后還不去清狗,計(jì)時(shí)器就會(huì)溢出從未引起看門(mén)狗中斷,造成系統(tǒng)復(fù)位。因此我們?cè)谑褂眠^(guò)程中要及時(shí)去清狗!


聯(lián)系銷(xiāo)售
銷(xiāo)售王經(jīng)理微信 銷(xiāo)售王經(jīng)理
微信公眾號(hào) 微信公眾號(hào)
服務(wù)熱線(xiàn)
400-6688-400