基于X25045的新型看門(mén)狗電路圖

發(fā)布時(shí)間:2010-7-30 13:45    發(fā)布者:lavida
關(guān)鍵詞: X25045 , 看門(mén)狗
看門(mén)狗(watchdog)電路嵌入式系統需要的抗干擾措施之一。本文用x25045芯片設計了一種新的看門(mén)狗電路,具有體積小、占用i/o口線(xiàn)少和編程方便的特點(diǎn),可廣泛應用于儀器儀表和各種工控系統中。
  
前言  

工控系統在運行時(shí),通常都會(huì )遇到各種各樣的現場(chǎng)干擾,抗干擾能力是衡量工控系統性能的一個(gè)重要指標?撮T(mén)狗(watchdog)電路是自行監測系統運行的重要保證,幾乎所有的工控系統都包含看門(mén)狗電路。在8096系列單片機和增強型8051系列單片機中,該系統已經(jīng)做在芯片內部,用戶(hù)只要用軟件開(kāi)放它就可以,使用很方便。但目前工控系統仍在使用廉價(jià)的普通型8051系列單片機,則看門(mén)狗電路必須由用戶(hù)自己建立。  

看門(mén)狗電路一般有軟件看門(mén)狗和硬件看門(mén)狗兩種。軟件看門(mén)狗不需外接硬件電路,但系統需要出讓一個(gè)定時(shí)器資源,這在許多系統中很難辦到,而且若系統軟件運行不正常,可能導致看門(mén)狗系統也癱瘓。硬件看門(mén)狗是真正意義上的“程序運行監視器”,如計數型的看門(mén)狗電路通常由555多諧振蕩器、計數器以及一些電阻、電容等組成,分立元件組成的系統電路較為復雜,運行不夠可靠。  

x25045芯片簡(jiǎn)介  

x25045是美國xicor公司的生產(chǎn)的標準化8腳集成電路,它將eeprom、看門(mén)狗定時(shí)器、電壓監控三種功能組合在單個(gè)芯片之內,大大簡(jiǎn)化了硬件設計,提高了系統的可靠性,減少了對印制電路板的空間要求,降低了成本和系統功耗,是一種理想的單片機外圍芯片。x25045引腳如圖1所示。  

其引腳功能如下。  

cs:片選擇輸入;
so:串行輸出,數據由此引腳逐位輸出;
si:串行輸入,數據或命令由此引腳逐位寫(xiě)入x25045;
sck:串行時(shí)鐘輸入,其上升沿將數據或命令寫(xiě)入,下降沿將數據輸出;
wp:寫(xiě)保護輸入。當它低電平時(shí),寫(xiě)操作被禁止;
vss:地;
vcc:電源電壓;
reset:復位輸出。

x25045在讀寫(xiě)操作之前,需要先向它發(fā)出指令,指令名及指令格式如表1所示。  



表1 x25045指令及其含義  

x25045看門(mén)狗電路設計及編程  

x25045硬件連接圖如圖2所示。x25045芯片內包含有一個(gè)看門(mén)狗定時(shí)器,可通過(guò)軟件預置系統的監控時(shí)間。在看門(mén)狗定時(shí)器預置的時(shí)間內若沒(méi)有總線(xiàn)活動(dòng),則x25045將從reset輸出一個(gè)高電平信號,經(jīng)過(guò)微分電路c2、r3輸出一個(gè)正脈沖,使cpu復位。圖2電路中,cpu的復位信號共有3個(gè):上電復位(c1、r2),人工復位(s、r1、r2)和watchdog復位(c2、r3),通過(guò)或門(mén)綜合后加到reset端。c2、r3的時(shí)間常數不必太大,有數百微秒即可,因為這時(shí)cpu的振蕩器已經(jīng)在工作。  



圖2 x25045看門(mén)狗電路硬件連接圖  

看門(mén)狗定時(shí)器的預置時(shí)間是通過(guò)x25045的狀態(tài)寄存器的相應位來(lái)設定的。如表2所示,x25045狀態(tài)寄存器共有6位有含義,其中wd1、wd0和看門(mén)狗電路有關(guān),其余位和eeprom的工作設置有關(guān)。  



表2 x25045狀態(tài)寄存器  
wd1=0,wd0=0,預置時(shí)間為1.4s。
wd1=0,wd0=1,預置時(shí)間為0.6s。
wd1=1,wd0=0,預置時(shí)間為0.2s。
wd1=1,wd0=1,禁止看門(mén)狗工作。  

看門(mén)狗電路的定時(shí)時(shí)間長(cháng)短可由具體應用程序的循環(huán)周期決定,通常比系統正常工作時(shí)最大循環(huán)周期的時(shí)間略長(cháng)即可。編程時(shí),可在軟件的合適地方加一條喂狗指令,使看門(mén)狗的定時(shí)時(shí)間永遠達不到預置時(shí)間,系統就不會(huì )復位而正常工作。當系統跑飛,用軟件陷阱等別的方法無(wú)法捕捉回程序時(shí),則看門(mén)狗定時(shí)時(shí)間很快增長(cháng)到預置時(shí)間,迫使系統復位。

以下是c語(yǔ)言編寫(xiě)的看門(mén)狗程序部分。  

#include "reg51.h"
sbit cs=p1^2;/*片選信號由p1.2產(chǎn)生*/
sbit sck=p1^3; /*時(shí)鐘信號由p1.3 產(chǎn)生*/
sbit si=p1^0; /*si由p1.0產(chǎn)生*/
sbit so=p1^1; /*so由p1.1產(chǎn)生*/
sbit c=acc^7; /*定義位變量*/
bdata unsigned char com;
void tran() /*發(fā)送一字節數據子函數*/
{
unsigned char i;
for(i=0; ics=1;
...;系統正常運行的程序部分
}   
  
需要注意的是,在程序正常運行的時(shí)候,應該在適當的地方加一條喂狗指令,使系統正常運行時(shí)的定時(shí)時(shí)間達不到預置時(shí)間。系統就不會(huì )復位。喂狗指令如下。  

main()
{
...;系統正常運行的程序部分
{
cs=0; /*產(chǎn)生cs脈沖*/
cs=1;
}
}  

x25045的看門(mén)狗電路使用十分方便。x25045內部還集成了512beeprom和電壓運行監視系統,只需這樣一塊芯片,外加晶振和復位電路就可以組成單片機的應用系統,非常適合于便攜式儀器和嵌入式系統的設計。
本文地址:http://selenalain.com/thread-18082-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页