本發(fā)明涉及單片機系統(tǒng)設(shè)計領(lǐng)域,特別是涉及一種看門狗控制電路及看門狗應(yīng)用電路。
背景技術(shù):
在由單片機構(gòu)成的微型計算機系統(tǒng)中,由于單片機的工作常常會受到來自外界電磁場的干擾,造成各種寄存器和內(nèi)存的數(shù)據(jù)混亂,會導(dǎo)致程序指針錯誤,不在程序區(qū),取出錯誤的程序指令等,陷入死循環(huán),程序的正常運行被打斷,由單片機控制的系統(tǒng)無法繼續(xù)正常工作,造成整個系統(tǒng)陷入停滯狀態(tài),發(fā)生不可預(yù)料的后果。
出于對單片機運行狀態(tài)進行實時監(jiān)測的考慮,一種專門用于監(jiān)測單片機程序運行狀態(tài)的電路或芯片應(yīng)運而生,即看門狗。傳統(tǒng)的看門狗控制電路主要由觸發(fā)器或芯片構(gòu)成,使用看門狗時需要短接跳線接口或斷路器,操作繁瑣,降低了工作效率。
技術(shù)實現(xiàn)要素:
基于此,有必要針對傳統(tǒng)看門狗控制電路操作繁瑣,降低工作效率的問題,提供一種操作簡單,可提高工作效率的看門狗控制電路及看門狗應(yīng)用電路。
一種看門狗控制電路,包括邏輯判斷模塊以及輸出第一信號和第二信號的信號生成器,邏輯判斷模塊包括輸入端、控制端和輸出端;
邏輯判斷模塊的輸入端與外部處理器的通用輸入輸出端連接,邏輯判斷模塊的控制端與信號生成器連接,邏輯判斷模塊的輸出端與外部看門狗的喂狗信號輸入端連接,外部看門狗的復(fù)位信號輸出端與外部處理器的復(fù)位輸入端連接;
當(dāng)信號生成器輸出第一信號至邏輯判斷模塊的控制端時,邏輯判斷模塊處于高阻態(tài);當(dāng)信號生成器輸出第二信號至邏輯判斷模塊的控制端時,邏輯判斷模塊處于高低電平輸出狀態(tài)。
一種看門狗應(yīng)用電路,包括看門狗、處理器以及看門狗控制電路,看門狗包括喂狗信號輸入端和復(fù)位信號輸出端,處理器包括通用輸入輸出端和復(fù)位輸入端,看門狗控制電路包括輸出第一信號和第二信號的信號生成器以及邏輯判斷模塊;
邏輯判斷模塊的輸入端與處理器的通用輸入輸出端連接,邏輯判斷模塊的控制端與信號生成器連接,邏輯判斷模塊的輸出端與看門狗的喂狗信號輸入端連接,看門狗的復(fù)位信號輸出端與處理器的復(fù)位輸入端連接;
當(dāng)信號生成器輸出第一信號至邏輯判斷模塊的控制端時,邏輯判斷模塊處于高阻態(tài);當(dāng)信號生成器輸出第二信號至邏輯判斷模塊的控制端時,邏輯判斷模塊處于高低電平輸出狀態(tài)。
上述看門狗控制電路,包括邏輯判斷模塊以及輸出第一信號和第二信號的信號生成器,邏輯判斷模塊包括輸入端、控制端和輸出端;邏輯判斷模塊的輸入端與外部處理器的通用輸入輸出端連接,邏輯判斷模塊的控制端與信號生成器連接,邏輯判斷模塊的輸出端與外部看門狗的喂狗輸入端連接,外部看門狗的復(fù)位信號輸出端與外部處理器的復(fù)位輸入端連接;當(dāng)信號生成器輸出第一信號至邏輯判斷模塊的控制端時,邏輯判斷模塊處于高阻態(tài),外部看門狗被禁止;當(dāng)信號生成器輸出第二信號至邏輯判斷模塊的控制端時,邏輯判斷模塊處于高低電平輸出狀態(tài),可正常使用外部看門狗;該看門狗控制電路實現(xiàn)了在不用增加人為操作下的情況下使用外部看門狗,操作簡單,可有效地提高工作效率。
上述看門狗應(yīng)用電路,包括看門狗、處理器以及看門狗控制電路,看門狗控制電路包括輸出第一信號和第二信號的信號生成器以及邏輯判斷模塊,邏輯判斷模塊包括輸入端、控制端和輸出端,看門狗包括喂狗信號輸入端和復(fù)位信號輸出端,處理器包括通用輸入輸出端和復(fù)位輸入端;邏輯判斷模塊的輸入端與處理器的通用輸入輸出端連接,邏輯判斷模塊的控制端與信號生成器連接,邏輯判斷模塊的輸出端與看門狗的喂狗信號輸入端連接,看門狗的復(fù)位信號輸出端與處理器的復(fù)位輸入端連接;當(dāng)信號生成器輸出第一信號至邏輯判斷模塊的控制端時,邏輯判斷模塊處于高阻態(tài),看門狗被禁止;當(dāng)信號生成器輸出第二信號至邏輯判斷模塊的控制端時,邏輯判斷模塊處于高低電平輸出狀態(tài),可正常使用看門狗;該看門狗應(yīng)用電路實現(xiàn)了在不用增加人為操作下的情況下使用看門狗,操作簡單,可有效地提高工作效率。
附圖說明
圖1為一個實施例中看門狗控制電路的結(jié)構(gòu)示意圖;
圖2為一個實施例中常見看門狗控制電路的原理示意圖;
圖3為一個實施例中看門狗控制電路的原理示意圖;
圖4為一個實施例中看門狗應(yīng)用電路的結(jié)構(gòu)示意圖。
具體實施方式
一種看門狗控制電路,包括邏輯判斷模塊140以及輸出第一信號和第二信號的信號生成器120,邏輯判斷模塊140包括輸入端、控制端和輸出端;
邏輯判斷模塊140的輸入端與外部處理器的通用輸入輸出端連接,邏輯判斷模塊140的控制端與信號生成器120連接,邏輯判斷模塊140的輸出端與外部看門狗的喂狗信號輸入端連接,外部看門狗的復(fù)位信號輸出端與外部處理器的復(fù)位輸入端連接;
當(dāng)信號生成器120輸出第一信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高阻態(tài);當(dāng)信號生成器120輸出第二信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高低電平輸出狀態(tài)。
邏輯判斷模塊140在接收到信號生成器120生成的第一信號時,處于高阻狀態(tài);在接收到信號生成器120生成的第二信號時,處于高低電平輸出狀態(tài)。邏輯判斷模塊140處于高阻狀態(tài)時,相當(dāng)于將外部看門狗與外部處理器斷開;而邏輯判斷模塊140處于高低電平輸出狀態(tài)時,外部處理器可正常地與外部看門狗連接,給外部看門狗發(fā)送喂狗信號。具體的,邏輯判斷模塊140可以是三態(tài)緩沖器,三態(tài)緩沖器又稱為三態(tài)門、三態(tài)驅(qū)動器,其三態(tài)輸出受到使能輸出端的控制,當(dāng)使能輸出端有效時,器件實現(xiàn)正常邏輯狀態(tài)輸出(邏輯0、邏輯1);當(dāng)使能輸出端無效時,輸出處于高阻狀態(tài),即等效于與所連的電路斷開。三態(tài)門,是指邏輯門電路的輸出除有高、低電平兩種狀態(tài)外,還有第三種狀態(tài)——高阻狀態(tài)。高阻態(tài)相當(dāng)于隔斷狀態(tài)(電阻很大,相當(dāng)于開路),三態(tài)門都有一個使能控制端,來控制門電路的通斷。
在由單片機等處理器構(gòu)成的微型計算機系統(tǒng)中,由于單片機等處理器的工作常常會受到來自外界電磁場的干擾,造成各種寄存器和內(nèi)存的數(shù)據(jù)混亂,會導(dǎo)致程序指針錯誤,不在程序區(qū),取出錯誤的程序指令等,陷入死循環(huán),程序的正常運行被打斷,由單片機等處理器控制的系統(tǒng)無法繼續(xù)正常工作,造成整個系統(tǒng)陷入停滯狀態(tài),發(fā)生不可預(yù)料的后果。
外部看門狗可以定期的查看外部處理器內(nèi)部的情況,一旦處理器發(fā)生錯誤,外部看門狗就向處理器發(fā)出重啟信號,看門狗命令在程序的中斷中擁有最高的優(yōu)先級。外部看門狗的應(yīng)用,使外部處理器可以在無人狀態(tài)下實現(xiàn)連續(xù)工作,具體工作原理是:看門狗的一個引腳與處理器的一個引腳連接,定時地往看門狗的這個引腳上送入高電平(或低電平),一旦處理器由于干擾造成程序跑飛后而陷入某一程序段進入死循環(huán)狀態(tài)時,看門狗便不能被執(zhí)行,此時,看門狗就會由于得不到處理器送來的信號,便在看門狗的復(fù)位引腳送出一個復(fù)位信號至處理器復(fù)位引腳,使處理器復(fù)位,即程序從程序存儲器的起始位置開始執(zhí)行,這樣便實現(xiàn)了處理器的自動復(fù)位。
看門狗是一個定時器電路,一般有一個輸入端,叫喂狗信號輸入端,一個輸出到處理器的復(fù)位信號輸出端,處理器正常工作的時候,每隔一段時間輸出一個信號到喂狗信號輸入端,如果超過規(guī)定的時間不喂狗(一般在程序跑飛時),定時超過,就會給出一個復(fù)位信號到處理器,使處理器復(fù)位,防止死機,看門狗的作用就是防止程序進入死循環(huán)或者程序跑飛??撮T狗的工作原理為:在系統(tǒng)運行,即啟動了看門狗的計數(shù)器,看門狗就開始自動計數(shù),如果到了一定的時間還不去清看門狗,那么看門狗計數(shù)器就會溢出從而引起看門狗中斷,造成系統(tǒng)復(fù)位,所以在使用看門狗時要注意清看門狗。硬件看門狗是利用了一個定時器,來監(jiān)控主程序的運行,也就是說在主程序的運行過程中,要在定時時間到來之前對定時器進行復(fù)位。如果出現(xiàn)死循環(huán),或者說程序指針不能回來,那么定時時間到來后就會使處理器復(fù)位,常用的看門狗芯片有MAX813、5045、IMP813等。
上述看門狗控制電路,包括邏輯判斷模塊140以及輸出第一信號和第二信號的信號生成器120,邏輯判斷模塊140包括輸入端、控制端和輸出端;邏輯判斷模塊140的輸入端與外部處理器的通用輸入輸出端連接,邏輯判斷模塊140的控制端與信號生成器120連接,邏輯判斷模塊140的輸出端與外部看門狗的喂狗信號輸入端連接,外部看門狗的復(fù)位信號輸出端與外部處理器的復(fù)位輸入端連接;當(dāng)信號生成器120輸出第一信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高阻態(tài),外部看門狗被禁止;當(dāng)信號生成器120輸出第二信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高低電平輸出狀態(tài),可正常使用外部看門狗;該看門狗控制電路實現(xiàn)了在不用增加人為操作下的情況下使用外部看門狗,操作簡單,可有效地提高工作效率。
在一個實施例中,看門狗控制電路中的第一信號為高電平信號,第二信號為低電平信號,信號生成器120輸出高電平信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高阻態(tài),外部看門狗被禁止;信號生成器120輸出低電平信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高低電平輸出狀態(tài),可正常使用外部看門狗。具體的,信號生成器120包括第一電阻和第二電阻,第一電阻的一端分別與邏輯判斷模塊的控制端以及第二電阻的一端連接,第一電阻的另一端接地,第二電阻的另一端與外部電源連接。更為具體的,信號生成器還包括跳線接口,第二電阻的另一端通過跳線接口與外部電源連接,其中,第一電阻的阻值為10KΩ,第二電阻的阻值為100Ω。當(dāng)短接跳線接口時,信號生成器輸出高電平至邏輯判斷模塊的控制端,邏輯控制模塊為高阻狀態(tài),看門狗被禁止;當(dāng)懸空跳線接口時,第一電阻相當(dāng)于下拉電阻,信號生成器輸出低電平至邏輯判斷模塊的控制端,邏輯判斷模塊為高低電平輸出狀態(tài),可正常使用看門狗。
在一個實施例中,看門狗控制電路還包括分壓模塊,邏輯判斷模塊的輸出端通過分壓模塊與外部看門狗的喂狗信號輸入端連接。具體的,分壓模塊包括3.3V電壓源接口、第三電阻和第四電阻,3.3V電壓源接口與第三電阻連接,第三電阻與第四電阻串聯(lián)后接地,其中,第三電阻和第四電阻均為阻值100KΩ的電阻,3.3V電壓源接口與3.3V電壓源連接,經(jīng)分壓模塊,外部看門狗的喂狗信號輸入端的電平為1.39V左右,即外部看門狗檢測到輸入電平為中間電平狀態(tài),復(fù)位信號輸出端輸出高電平,看門狗被禁止。
在一個具體實施例中,嵌入式系統(tǒng)設(shè)計中的硬件看門狗可以在發(fā)生軟件問題和程序跑飛后使系統(tǒng)重新啟動,這樣可提高系統(tǒng)的可靠性,常見的硬件看門狗電路設(shè)計如圖2所示,當(dāng)需要禁用看門狗時,懸空跳線接口JP1或斷路器CB1;當(dāng)需要使用看門狗時,短接跳線接口JP1或斷路器CB1。具體的,在系統(tǒng)軟硬件調(diào)試時,使用排針,懸空跳線接口JP1;燒入程序時,使用排針,懸空跳線接口JP1;在程序燒入完成后,使用短路焊盤,短路斷路器CB1。這樣常見的硬件看門狗電路至少存在以下問題:正常情況下需短接跳線接口JP1或斷路器CB1來使能看門狗,操作繁瑣;而且程序燒入完成后,需要多增加一道焊接工序短路斷路器CB1,生產(chǎn)效率低。如圖3所示,一種改進的看門狗控制電路,在沒有短接跳線接口JP1的情況下,阻值10KΩ的下拉電阻R4默認開啟三態(tài)門,MCU(Microcontroller Unit,微控制單元)通過OUTPUT輸出管腳進行喂狗,看門狗的復(fù)位管腳輸出高電平,實現(xiàn)在不用增加人為短接或者焊接的操作下即可使用看門狗;而在調(diào)試階段需禁止看門狗時,只需簡單的將跳線接口JP1短接,三態(tài)門的使能控制管腳即被拉為高電平,此時三態(tài)門輸出管腳Y呈高阻狀態(tài),看門狗的喂狗信號輸入WDI管腳由于電源電壓VCC_3V3通過分壓電阻R1、R2的分壓拉到中間電平,此時WDI管腳的電平為1.39V左右,由于該電壓為中間電平狀態(tài),CAT823即禁止看門狗。改進的看門狗控制電路正常情況下懸空跳線接口JP1,即可正常使用看門狗;在調(diào)試和燒入程序過程中只需短接跳線接口JP1,即可禁止看門狗,生產(chǎn)測試完成后可直接包裝入庫,無需額外增加人為焊接工序,提高了生產(chǎn)效率。
在一個實施例中,一種看門狗應(yīng)用電路,如圖4所示,包括看門狗控制電路100、看門狗200以及處理器300,具體的,看門狗控制電路100包括輸出第一信號和第二信號的信號生成器120以及邏輯判斷模塊140,邏輯判斷模塊140包括輸入端、控制端和輸出端,看門狗200包括喂狗信號輸入端和復(fù)位信號輸出端,處理器300包括通用輸入輸出端和復(fù)位輸入端;邏輯判斷模塊140的輸入端與處理器300的通用輸入輸出端連接,邏輯判斷模塊140的控制端與信號生成器120連接,邏輯判斷模塊140的輸出端與看門狗200的喂狗信號輸入端連接,看門狗200的復(fù)位信號輸出端與處理器300的復(fù)位輸入端連接;當(dāng)信號生成器120輸出第一信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高阻態(tài);當(dāng)信號生成器120輸出第二信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高低電平輸出狀態(tài)。
上述看門狗應(yīng)用電路,包括看門狗控制電路100、看門狗200以及處理器300,看門狗控制電路100包括輸出第一信號和第二信號的信號生成器120以及邏輯判斷模塊140,邏輯判斷模塊140包括輸入端、控制端和輸出端,看門狗200包括喂狗信號輸入端和復(fù)位信號輸出端,處理器300包括通用輸入輸出端和復(fù)位輸入端;邏輯判斷模塊140的輸入端與處理器300的通用輸入輸出端連接,邏輯判斷模塊140的控制端與信號生成器120連接,邏輯判斷模塊140的輸出端與看門狗200的喂狗信號輸入端連接,看門狗200的復(fù)位信號輸出端與處理器300的復(fù)位輸入端連接;當(dāng)信號生成器120輸出第一信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高阻態(tài),看門狗200被禁止;當(dāng)信號生成器120輸出第二信號至邏輯判斷模塊140的控制端時,邏輯判斷模塊140處于高低電平輸出狀態(tài),可正常使用看門狗200;該看門狗應(yīng)用電路實現(xiàn)了在不用增加人為操作下的情況下使用看門狗,操作簡單,可有效地提高工作效率。
以上所述實施例的各技術(shù)特征可以進行任意的組合,為使描述簡潔,未對上述實施例中的各個技術(shù)特征所有可能的組合都進行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認為是本說明書記載的范圍。
以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應(yīng)以所附權(quán)利要求為準。