當前位置:首頁 > 嵌入式 > 嵌入式硬件
[導讀]看門狗定時器(WDT,Watch Dog TImer)是單片機的一個組成部分,它實際上是一個計數(shù)器,一般給看門狗一個數(shù)字,程序開始運行后看門狗開始倒計數(shù)。如果程序運行正常,過一段時

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

 


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

看門狗定時器的功能作用

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

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

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

看門狗工作原理

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

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

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

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

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

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

 


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

 


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

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

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

即當WDTE=0時,看門狗WDT將被永久禁止;當WDTE=1時,看門狗WDT將被永久啟用。就是說,只要WDTE被定義成1,以后在用戶程序中將再也無法禁止看門狗的運行。

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

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

另外,看門狗的超時周期還可以借助于分頻器以及分頻器的分頻比,在一定范圍內改變和延長。分頻器是否配置給看門狗使用,可以通過用戶程序定義選項寄存器OPTION KEG的PSA位進行設置。

看門狗設計原理

在看門狗( watchdog timer),是一個定時器電路, 一般有一個輸入,叫喂狗(kicking the dog or service the dog),一個輸出到MCU的RST端,MCU正常工作的時候,每隔一段時間輸出一個信號到喂狗端,給WDT清零,如果超過規(guī)定的時間不喂狗,(一般在程序跑飛時),WDT 定時超過,就會給出一個復位信號到MCU,使MCU復位。 防止MCU死機。 看門狗的作用就是防止程序發(fā)生死循環(huán),或者說程序跑飛。 出于對單片機運行狀態(tài)進行實時監(jiān)測的考慮,產生了一種專門用于監(jiān)測單片機程序運行狀態(tài)的芯片,俗稱“看門狗”(watchdog))集成電路(MAX*9)的基礎上,該電路提供了響應的輸入脈沖流損失鎖存故障指示。該電路可以監(jiān)控風扇(上風扇的轉速輸出計算),振蕩電路,或一個微處理器軟件執(zhí)行。[!--empirenews.page--]

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

 


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

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

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

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

看門狗定時器的操作

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

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

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

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

 


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

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

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

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉