新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于X25045的新型看門狗電路設計

        基于X25045的新型看門狗電路設計

        作者: 時間:2012-06-16 來源:網絡 收藏

        狗(Watchdog)電路是嵌入式系統需要的抗干擾措施之一。本文用芯片設計了一種新的狗電路,具有體積小、占用I/O口線少和編程方便的特點,可廣泛應用于儀器儀表和各種工控系統中。

        本文引用地址:http://www.104case.com/article/148901.htm

          前言

          工控系統在運行時,通常都會遇到各種各樣的現場干擾,抗干擾能力是衡量工控系統性能的一個重要指標。狗(Watchdog)電路是自行監測系統運行的重要保證,幾乎所有的工控系統都包含看門狗電路。在8096系列單片機和增強型8051系列單片機中,該系統已經做在芯片內部,用戶只要用軟件開放它就可以,使用很方便。但目前工控系統仍在使用廉價的普通型8051系列單片機,則看門狗電路必須由用戶自己建立。

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

          芯片簡介

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

          

          圖1 X25045引腳圖

          其引腳功能如下。

          CS:片選擇輸入;

          SO:串行輸出,數據由此引腳逐位輸出;

          SI:串行輸入,數據或命令由此引腳逐位寫入X25045;

          SCK:串行時鐘輸入,其上升沿將數據或命令寫入,下降沿將數據輸出;

          WP:寫保護輸入。當它低電平時,寫操作被禁止;

          Vss:地;

          Vcc:電源電壓;

          RESET:復位輸出。

          X25045在讀寫操作之前,需要先向它發出指令,指令名及指令格式如表1所示。

          

          表1 X25045指令及其含義

          X25045看門狗及編程

          X25045硬件連接圖如圖2所示。X25045芯片內包含有一個看門狗定時器,可通過軟件預置系統的監控時間。在看門狗定時器預置的時間內若沒有總線活動,則X25045將從RESET輸出一個高電平信號,經過微分電路C2、R3輸出一個正脈沖,使CPU復位。圖2電路中,CPU的復位信號共有3個:上電復位(C1、R2),人工復位(S、R1、R2)和Watchdog復位(C2、R3),通過或門綜合后加到RESET端。C2、R3的時間常數不必太大,有數百微秒即可,因為這時CPU的振蕩器已經在工作。

          

          圖2 X25045看門狗電路硬件連接圖

          看門狗定時器的預置時間是通過X25045的狀態寄存器的相應位來設定的。如表2所示,X25045狀態寄存器共有6位有含義,其中WD1、WD0和看門狗電路有關,其余位和EEPROM的工作設置有關。

          

          表2 X25045狀態寄存器

          WD1=0,WD0=0,預置時間為1.4s。

          WD1=0,WD0=1,預置時間為0.6s。

          WD1=1,WD0=0,預置時間為0.2s。

          WD1=1,WD0=1,禁止看門狗工作。

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


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 博爱县| 南安市| 阳山县| 蒙阴县| 河曲县| 江门市| 施秉县| 巴林右旗| 义马市| 乌鲁木齐县| 尖扎县| 天全县| 同心县| 台中市| 舟曲县| 科尔| 措勤县| 维西| 芜湖县| 鄂州市| 普陀区| 枞阳县| 荥经县| 色达县| 于都县| 西和县| 宣汉县| 越西县| 通城县| 义乌市| 民和| 安宁市| 揭西县| 讷河市| 赤水市| 察隅县| 镇沅| 博湖县| 积石山| 翼城县| 阳城县|