一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

看門狗定時(shí)器的設(shè)計(jì)、工作原理及看門狗定時(shí)器的操作

 lixinhecom 2018-05-08

    看門狗定時(shí)器(WDT,Watch Dog TImer)是單片機(jī)的一個(gè)組成部分,它實(shí)際上是一個(gè)計(jì)數(shù)器,一般給看門狗一個(gè)數(shù)字,程序開(kāi)始運(yùn)行后看門狗開(kāi)始倒計(jì)數(shù)。如果程序運(yùn)行正常,過(guò)一段時(shí)間CPU應(yīng)發(fā)出指令讓看門狗復(fù)位,重新開(kāi)始倒計(jì)數(shù)。如果看門狗減到0就認(rèn)為程序沒(méi)有正常工作,強(qiáng)制整個(gè)系統(tǒng)復(fù)位。

  看門狗定時(shí)器的設(shè)計(jì)、工作原理及看門狗定時(shí)器的操作

  為了給初學(xué)者一個(gè)系統(tǒng)的概念,先介紹一下看門狗的基本概念。當(dāng)嵌入式系統(tǒng)運(yùn)行時(shí)受到外部干擾或者系統(tǒng)錯(cuò)誤,程序有時(shí)會(huì)出現(xiàn)“跑飛”,導(dǎo)致整個(gè)系統(tǒng)癱瘓。為了防止這一現(xiàn)象的發(fā)生,在對(duì)系統(tǒng)穩(wěn)定性要求較高的場(chǎng)合往往要加入看門狗(WATCHDOG)電路??撮T狗的作用就是當(dāng)系統(tǒng)“跑飛”而進(jìn)入死循環(huán)時(shí),恢復(fù)系統(tǒng)的運(yùn)行。

  看門狗定時(shí)器的功能作用

  看門狗定時(shí)器(WDT,Watch Dog TImer)是單片機(jī)的一個(gè)組成部分,在單片機(jī)程序的調(diào)試和運(yùn)行中都有著重要的意義。它的主要功能是在發(fā)生軟件故障時(shí),通過(guò)使器件復(fù)位(如果軟件未將器件清零)將單片機(jī)復(fù)位。也可以用于將器件從休眠或空閑模  看門狗定時(shí)器對(duì)微控制器提供了獨(dú)立的保護(hù)系統(tǒng),當(dāng)系統(tǒng)出現(xiàn)故障時(shí),在可選的超時(shí)周期之后,看門狗將以RESET信號(hào)作出響應(yīng),像x25045就可選超時(shí)周期為1.4秒、600毫秒、200毫秒三種。當(dāng)你的程序死機(jī)時(shí),x25045就會(huì)使單片機(jī)復(fù)位。

  大多數(shù)看門狗定時(shí)器IC產(chǎn)生一個(gè)單一的,有限的輸出脈沖持續(xù)時(shí)間當(dāng)看門狗超時(shí)。這適用于觸發(fā)復(fù)位或中斷微處理器,但有些應(yīng)用需要輸出(故障指示燈)的鎖存器。

  考慮到安全性問(wèn)題,汽車電子系統(tǒng)需要監(jiān)控電路監(jiān)測(cè)故障容限或安全性。看門狗定時(shí)器可理想滿足這類需求,通過(guò)對(duì)微控制器正常工作條件下產(chǎn)生的周期脈沖進(jìn)行檢測(cè),偵測(cè)電路或?C的失效狀態(tài),一旦發(fā)生故障可立即切換到備份/冗余系統(tǒng)。式喚醒。

  看門狗工作原理

  1. 其基本原理為:設(shè)本系統(tǒng)程序完整運(yùn)行一周期的時(shí)間是Tp,看門狗的定時(shí)周期為TI,TI》Tp,在程序運(yùn)行一周期后就修改定時(shí)器的計(jì)數(shù)值,只要程序正常運(yùn)行,定時(shí)器就不會(huì)溢出,若由于干擾等原因使系統(tǒng)不能在Tp 時(shí)刻修改定時(shí)器的計(jì)數(shù)值,定時(shí)器將在Ti 時(shí)刻溢出,引發(fā)系統(tǒng)復(fù)位,使系統(tǒng)得以重新運(yùn)行,從而起到監(jiān)控作用。

  2. 在一個(gè)完整的嵌入式系統(tǒng)或單片機(jī)小系統(tǒng)中通常都有看門狗定時(shí)器,且一般集成在處理器芯片中,看門狗實(shí)際上就是一個(gè)定時(shí)器,只是它在期滿后將自動(dòng)引起系統(tǒng)復(fù)位。

  使用時(shí),WDT將遞增,直到溢出,或稱“超時(shí)”。除非處于休眠或空閑模式,WDT 超時(shí)會(huì)強(qiáng)制器件復(fù)位。為避免WDT超時(shí)復(fù)位,用戶必須定期用PWRSAV 或CLRWDT 指令將看門狗定時(shí)器清零。如果WDT 在休眠或空閑模式下超時(shí),器件將喚醒并從PWRSAV 指令執(zhí)行處繼續(xù)執(zhí)行代碼。在上述兩種情況下,WDTO 位(RCON《4》)都會(huì)置1,表示該器件復(fù)位或喚醒事件是由于WDT超時(shí)引起的。如果WDT 將CPU從休眠或空閑模式喚醒,“休眠”狀態(tài)位(RCON《3》)或“空閑”狀態(tài)位(RCON《2》)也會(huì)置1,表示器件之前處于省電模式。

  在正常操作期間,一次WDT超時(shí)溢出將產(chǎn)生一次器件復(fù)位。當(dāng)器件處于休眠狀態(tài)時(shí),一次WDT超時(shí)溢出將喚醒器件,使其繼續(xù)正常操作(即稱作WDT 喚醒)。對(duì)WDTE 設(shè)置位清零可以永久性地關(guān)閉WDT。

  后分頻器分配完全是由軟件控制,即它可在程序執(zhí)行期間隨時(shí)更改。

  為避免發(fā)生不可預(yù)測(cè)的器件復(fù)位,當(dāng)從Timer0 預(yù)分頻器的分配改為WDT 后分頻器的分配時(shí),必須執(zhí)行下列指令序列。即使WDT 被禁止,也要執(zhí)行這個(gè)指令序列。

  看門狗定時(shí)器的設(shè)計(jì)、工作原理及看門狗定時(shí)器的操作

  由看門狗WDT引發(fā)系統(tǒng)復(fù)位的電路結(jié)構(gòu)等效圖如圖所示。從該圖中可以看出,只有當(dāng)狀態(tài)信號(hào)SLEEP=1,即單片機(jī)處于非睡眠狀態(tài)時(shí),看門狗超時(shí)溢出才會(huì)引發(fā)單片機(jī)的復(fù)位操作。而在單片機(jī)處于睡眠狀態(tài),即狀態(tài)信號(hào)SLEEP=0時(shí),看門狗超時(shí)溢出會(huì)喚醒單片機(jī)

  看門狗定時(shí)器的設(shè)計(jì)、工作原理及看門狗定時(shí)器的操作

  看門狗就是一個(gè)用獨(dú)立時(shí)鐘源提供的脈沖進(jìn)行累加計(jì)數(shù)的計(jì)數(shù)器,無(wú)需任何外部元件。獨(dú)立的RC時(shí)鐘信號(hào)源是指RC振蕩器與OSC1(ULKIIN)引腳的外接RC振蕩器,OSC1和OSC2外接晶體振蕩器/陶瓷諧振器構(gòu)成的單片機(jī)系統(tǒng)時(shí)鐘是分離的。這就意味著,即使單片機(jī)進(jìn)入系統(tǒng)時(shí)鐘停振的睡眠狀態(tài),監(jiān)視定時(shí)器WDT仍然能夠運(yùn)行。

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

  每次看門狗超時(shí)溢出,都會(huì)使得狀態(tài)寄存器STATUS中的了T0位被清0,以記錄曾經(jīng)發(fā)生的這次看門狗溢出事件,供作程序查詢判斷用。

  即當(dāng)WDTE=0時(shí),看門狗WDT將被永久禁止;當(dāng)WDTE=1時(shí),看門狗WDT將被永久啟用。就是說(shuō),只要WDTE被定義成1,以后在用戶程序中將再也無(wú)法禁止看門狗的運(yùn)行。

  若想不讓看門狗WDT發(fā)生超時(shí)溢出,在用戶程序中只能不停地、周期性地將看門狗計(jì)時(shí)器清0,使它不會(huì)因計(jì)數(shù)到超過(guò)最大值而溢出。

  看門狗計(jì)時(shí)器的計(jì)時(shí)周期取決于獨(dú)立RC振蕩源的頻率和計(jì)時(shí)器的寬度,同時(shí)在一定程度上受到工作電壓、環(huán)蟑溫度、制作工藝等因素的影響。

  另外,看門狗的超時(shí)周期還可以借助于分頻器以及分頻器的分頻比,在一定范圍內(nèi)改變和延長(zhǎng)。分頻器是否配置給看門狗使用,可以通過(guò)用戶程序定義選項(xiàng)寄存器OPTION KEG的PSA位進(jìn)行設(shè)置。

  看門狗設(shè)計(jì)原理

  在看門狗( watchdog timer),是一個(gè)定時(shí)器電路, 一般有一個(gè)輸入,叫喂狗(kicking the dog or 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ī)。 看門狗的作用就是防止程序發(fā)生死循環(huán),或者說(shuō)程序跑飛。 出于對(duì)單片機(jī)運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)測(cè)的考慮,產(chǎn)生了一種專門用于監(jiān)測(cè)單片機(jī)程序運(yùn)行狀態(tài)的芯片,俗稱“看門狗”(watchdog))集成電路(MAX*9)的基礎(chǔ)上,該電路提供了響應(yīng)的輸入脈沖流損失鎖存故障指示。該電路可以監(jiān)控風(fēng)扇(上風(fēng)扇的轉(zhuǎn)速輸出計(jì)算),振蕩電路,或一個(gè)微處理器軟件執(zhí)行。

  一個(gè)簡(jiǎn)單的電路提供了響應(yīng)的輸入脈沖流損失鎖存故障指示。在μP-supervisor/watchdog集成電路(MAX*9)的基礎(chǔ)上,該電路用于監(jiān)測(cè)風(fēng)扇(在風(fēng)扇的轉(zhuǎn)速輸出計(jì)算),振蕩電路,或一個(gè)合適的微處理器軟件執(zhí)行。

  看門狗定時(shí)器的設(shè)計(jì)、工作原理及看門狗定時(shí)器的操作

  在上電期間,低電平有效復(fù)位仍然很低,直到VCC的穩(wěn)定和復(fù)位超時(shí)時(shí)間到期。電容器C通過(guò)R,直到FET的柵極電壓達(dá)到閾值(電壓VTH),它開(kāi)啟了場(chǎng)效應(yīng)管,使鎖存能力。為了防止誤觸發(fā),你應(yīng)該設(shè)置RC延遲的時(shí)間遠(yuǎn)遠(yuǎn)超過(guò)了復(fù)位超時(shí)。

  WDI輸入(引腳6)必須按切換電容器CSWT設(shè)立最低速率。如果這沒(méi)有發(fā)生,低電平有效復(fù)位變低,在LED指示燈,在連接和低拉復(fù)位,從而鎖定低電平復(fù)位。該電路仍然有效,直到你循環(huán)VCC或推開(kāi)關(guān)在此條件。要么關(guān)閉FET的行動(dòng),并允許重置變高。

  為了監(jiān)測(cè)風(fēng)扇開(kāi)漏測(cè)速信號(hào),從世界發(fā)展指標(biāo)10kΩ的連接到VCC(引腳8)上拉電阻器。由于風(fēng)扇需要一些時(shí)間來(lái)旋轉(zhuǎn)起來(lái),看門狗電路需要為一個(gè)短暫的延遲時(shí)間間隔停用。您可以通過(guò)將本延遲電容(C2)從對(duì)地復(fù)位。請(qǐng)注意,此延遲必須小于上述RC延遲,或低電平有效復(fù)位鎖存過(guò)早會(huì)較短。

  對(duì)于一個(gè)風(fēng)扇監(jiān)控,對(duì)CSWT值設(shè)置最大轉(zhuǎn)速脈沖周期根據(jù)公式5.06×106 × CSWT,其中在幾秒鐘內(nèi)CSWT。如果轉(zhuǎn)速低于這個(gè)閾值時(shí),低電平有效復(fù)位輸出低和插銷。

  看門狗定時(shí)器的操作

  在正常操作期間,一次WDT 超時(shí)溢出將產(chǎn)生一次器件復(fù)位。如果器件處于休眠狀態(tài),一次WDT超時(shí)溢出將喚醒器件,使其繼續(xù)正常操作(即稱作WDT 喚醒)。對(duì)WDTE 設(shè)置位清零可以永久性地關(guān)閉WDT。

  后分頻器分配完全是由軟件控制,即它可在程序執(zhí)行期間隨時(shí)更改。

  為避免發(fā)生不可預(yù)測(cè)的器件復(fù)位,當(dāng)從Timer0 預(yù)分頻器的分配改為WDT 后分頻器的分配時(shí),必須執(zhí)行下列指令序列。即使WDT 被禁止,也要執(zhí)行這個(gè)指令序列。

  如圖所示是看門狗定時(shí)器的功能框圖。

  看門狗定時(shí)器的設(shè)計(jì)、工作原理及看門狗定時(shí)器的操作

  S3C44B0X看門狗定時(shí)利用MCLK作為時(shí)鐘源,經(jīng)過(guò)8位的預(yù)分頻和4選1的2位分割之后得到所需頻率。預(yù)分頻值和頻率分割值在看門狗定時(shí)器控制寄存器WTCON中配置,有效的預(yù)分頻值范圍為0~28-1,頻率分割系數(shù)可選為16、32、64或128。使用下列公式計(jì)算看門狗定時(shí)頻率和每個(gè)定時(shí)器時(shí)鐘周期值。

  twatchdog=1/MCLK/(預(yù)分頻值+1)/分頻系數(shù)

  看門狗定時(shí)器使能后,WTDAT(看門狗定時(shí)器數(shù)據(jù)寄存器)不能自動(dòng)裝入WTCNT(看門狗定時(shí)計(jì)數(shù)寄存器)。因此,在看門狗定時(shí)器開(kāi)始工作前,初值必須寫到看門狗定時(shí)計(jì)數(shù)寄存器WTCNT中。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    五月情婷婷综合激情综合狠狠| 欧美一区二区三区喷汁尤物| 91精品日本在线视频| 国产又大又黄又粗又免费| 丝袜诱惑一区二区三区| 99热九九在线中文字幕| 中文字字幕在线中文乱码二区 | 色综合久久中文综合网| 极品少妇嫩草视频在线观看| 老熟妇乱视频一区二区| 日韩精品小视频在线观看| 开心久久综合激情五月天| 日韩精品成区中文字幕| 丰满熟女少妇一区二区三区| 国产肥女老熟女激情视频一区| 国产三级不卡在线观看视频| 黑人粗大一区二区三区| 色丁香一区二区黑人巨大| 欧洲自拍偷拍一区二区| 国产在线不卡中文字幕| 欧美一区二区在线日韩| 中文字幕91在线观看| 中文字幕免费观看亚洲视频| 亚洲男人天堂网在线视频| 99久久人妻中文字幕| 国产又粗又猛又爽又黄| 东京热男人的天堂社区| 出差被公高潮久久中文字幕| 91天堂免费在线观看| 日韩成人高清免费在线| 日本加勒比在线播放一区| 日韩性生活片免费观看| 日韩欧美国产精品中文字幕| 丰满人妻熟妇乱又乱精品古代| 国产成人午夜在线视频| 日韩中文字幕有码午夜美女| 色婷婷在线视频免费播放| 激情少妇一区二区三区| 中文字幕人妻日本一区二区| 出差被公高潮久久中文字幕| 亚洲婷婷开心色四房播播|