新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MAX813L在51系統抗干擾中的應用及工作原理

        MAX813L在51系統抗干擾中的應用及工作原理

        作者: 時間:2011-10-13 來源:網絡 收藏
          近年來,單片機以其體積小、價格廉、面向控制等獨特優點,在各種工業控制、儀器儀表、設備、產品的自動化、智能化方面獲得了廣泛的應用。與此同時,單片機應用系統的可靠性成為人們越來越關注的重要課題。影響可靠性的因素是多方面的,如構成系統的元器件本身的可靠性、系統本身各部分之間的相互耦合因素等。其中系統的抗干擾性能是系統可靠性的重要指標。

        1 芯片及其工作原理
        1.1 芯片特點  
        · 加電、掉電以及供電電壓下降情況下的復位輸出,復位脈沖寬度典型值為200 ms。
        · 獨立的看門狗輸出,如果看門狗輸入在1.6 s內未被觸發,其輸出將變為高電平。
        · 1.25 V門限值檢測器,用于電源故障報警、電池低電壓檢測或+5 V以外的電源監控。
        · 低電平有效的手動復位輸入。
          · 8引腳DIP封裝。
        1.2 的引腳及功能  
        1.2.1 芯片引腳排列見圖1—1
        MAX813L工作原理及其在51單片機系統抗干擾中的應用

        1.2.2 各引腳功能及工作原理
        (1)手動復位輸入端(MAX813L工作原理及其在51單片機系統抗干擾中的應用
          當該端輸入低電平保持140 ms以上,MAX813L就輸出復位信號.該輸入端的最小輸入脈寬要求可以有效地消除開關的抖動。MAX813L工作原理及其在51單片機系統抗干擾中的應用與TTL/CMOS兼容。
        (2)工作電源端(VCC):接+5V電源。
        (3)電源接地端(GND):接0 V參考電平。
        (4)電源故障輸入端(PFI)
          當該端輸入電壓低于1.25 V時,5號引腳輸出端的信號由高電平變為低電平。
          (5)電源故障輸出端(MAX813L工作原理及其在51單片機系統抗干擾中的應用)
          電源正常時,保持高電平,電源電壓變低或掉電時,輸出由高電平變為低電平。
        (6)看門狗信號輸入端(WDI)
          程序正常運行時,必須在小于1.6 s的時間間隔內向該輸入端發送一個脈沖信號,以清除芯片內部的看門狗定時器。若超過1.6 s該輸入端收不到脈沖信號,則內部定時器溢出,8號引腳由高電平變為低電平。
        (7)復位信號輸出端(RST)
          上電時,自動產生200 ms的復位脈沖;手動復位端輸入低電平時,該端也產生復位信號輸出。
        (8)看門狗信號輸出端(MAX813L工作原理及其在51單片機系統抗干擾中的應用
          正常工作時輸出保持高電平,看門狗輸出時,該端輸出信號由高電平變為低電平。

        2 電路設計
        2.1 基本工作原理  
          工業環境中的干擾大多是以窄脈沖的形式出現,而最終造成微機系統故障的多數現象為“死機”。究其原因是CPU在執行某條指令時,受干擾的沖擊,使它的操作碼或地址碼發生改變,致使該條指令出錯。這時,CPU執行隨機拼寫的指令,甚至將操作數作為操作碼執行,導致程序“跑飛”或進入“死循環”。為使這種“跑飛”或進入“死循環”的程序自動恢復,重新正常工作,一種有效的辦法是采用硬件“看門狗”技術。用看門狗監視程序的運行。若程序發生“死機”,則看門狗產生復位信號,引導單片機程序重新進入正常運行。
        MAX813L工作原理及其在51單片機系統抗干擾中的應用
          此外,工業現場由于諸多大型用電設備的投入或撤出電網運行,往往造成系統的電源電壓不穩,當電源電壓降低或掉電時,會造成重要的數據丟失,系統不能正常運行。若設法在電源電壓降至一定的限值之前,單片機快速地保存重要數據,將會最大限度地減少損失。
          單片機的掉電工作方式電路原理圖如圖2—1所示:當PD設置為1時,激活掉電方式,此時MAX813L工作原理及其在51單片機系統抗干擾中的應用=0,與非門輸出為低電平,時鐘發生器停止工作,單片機內所有運行狀態均被停止,只有片內RAM和SFR中的數據被保存起來。在單片機系統中可借助于一定的外部附加電路監測電源電壓,并在電源發生故障時及時通知單片機(如通過引發MAX813L工作原理及其在51單片機系統抗干擾中的應用中斷來實現)快速保存重要數據,且斷開外圍設備用電電源,使整個應用系統的功耗降到最少。當電源恢復正常時,取消掉電工作方式,通過復位單片機,使系統重新正常工作。

        MAX813L工作原理及其在51單片機系統抗干擾中的應用

        2.2 硬件實現電路圖
          圖2—2給出了MAX813L在單片機系統中的典型應用線路圖。此電路可以實現上電、瞬時掉電以及程序運行出現“死機”時的自動復位和隨時的手動復位;并且可以實時地監視電源故障,以便及時地保存數據。
          本電路巧妙地利用了MAX813L的手動復位輸入端。只要程序一旦跑飛引起程序“死機”,MAX813L工作原理及其在51單片機系統抗干擾中的應用端電平由高到低,當MAX813L工作原理及其在51單片機系統抗干擾中的應用變低超過140 ms,將引起MAX813L產生一個200 ms的復位脈沖。同時使看門狗定時器清0和使MAX813L工作原理及其在51單片機系統抗干擾中的應用引腳變成高電平。也可以隨時使用手動復位按鈕使MAX813L產生復位脈沖,由于為產生復位脈沖MAX813L工作原理及其在51單片機系統抗干擾中的應用端要求低電平至少保持140ms以上,故可以有效地消除開關抖動。
          該電路可以實時地監視電源故障(掉電、電壓降低等)。圖2—2中R1的一端接未經穩壓的直流電源。電源正常時,確保R2上的電壓高于1.26 V,即保證MAX813L的PFI輸入端電平高于1.26 V。當電源發生故障,PFI輸入端的電平低于1.25 V時,電源故障輸出端MAX813L工作原理及其在51單片機系統抗干擾中的應用電平由高變低,引起單片機MAX813L工作原理及其在51單片機系統抗干擾中的應用中斷,CPU響應中斷,執行相應的中斷服務程序,保護數據,斷開外部用電電路等。

        3 抗干擾程序設計
        3.1 程序運行死機及相應對策
        程序正常運行時,由主程序在小于1.6 s的時間間隔內周期性地從P1.7端向MAX813L的WDI輸入端發送一個脈沖信號,以清除芯片內部的看門狗定時器。實現指令為:
        RST-PRG:SETB P1.7
        NOP     
        CLR P1.7
        若超過1.6 s該輸入端收不到脈沖信號,則內部看門狗定時器溢出,8號引腳由高電平變為低電平。引起MAX813L產生一個200 ms的復位脈沖。同時使看門狗定時器清0和使MAX813L工作原理及其在51單片機系統抗干擾中的應用引腳變成高電平。
          需要引起注意的是,整個單片機系統完成復位后,在PC指針的指引下整個程序將從0000H地址處重新開始初始化運行,而這在很多情況下是不允許的(如連續的工藝流程),為此必須采取相應的措施。首先在對單片機系統完成復位后,程序應該先判斷是開機運行(冷啟動)還是運行過程中“死機”之后的重新加載運行(熱啟動)。因為一般情況下在這兩種啟動方式下,系統程序在進入主流程前所要做的工作往往不同。如冷啟動后,系統程序在初始化程序中往往要進行系統資源的自檢以及將各外圍設備設置為相應的待機狀態等。而熱啟動后往往不再對系統的資源自檢,同時應盡量避免對各外圍設備修改設置,只是對單片機系統本身的一些資源進行必要的設置工作。其次,在大多數情況下,我們總可以把一個連續的過程分解開來,把它變成一個個獨立的子過程(狀態)組成的連續過程。在主程序運行過程中,適時保存相應狀態和該狀態下的相關參數。這樣當程序運行出現“死機”,在MAX813L作用下系統復位和初始化后,將首先查詢事先保存的狀態參數,然后根據此參數決定程序的流向。同時把該狀態下事先保存的參數取出,對系統外圍設備進行必要的恢復設置工作和引導程序繼續運行。根據這一思想設計的系統程序流程圖如圖3—1所示。
        3.2 電源故障及相應對策  
          當電源發生故障時,引起單片機MAX813L工作原理及其在51單片機系統抗干擾中的應用中斷,CPU響應中斷,執行相應的中斷服務程序,保護數據,斷開外部用電電路等。為了做到這一點,必須把MAX813L工作原理及其在51單片機系統抗干擾中的應用中斷優先級(PX0)設為最高,特別是系統中還有其它中斷時,更應如此。中斷優先級的設置可通過中斷優先寄存器IP實現,此外還要設置中斷允許寄存器IE的總允許位(EA)及外部中斷0中斷允許位(EX0)。實現指令為:

        SETB IP.0    ;設置PX0=1
        SETB IE.7    ;設置EA=1  
        SETB IE.0    ;設置EX0=1
        MAX813L工作原理及其在51單片機系統抗干擾中的應用
         
          至于中斷源的觸發方式。如果選擇電平觸發,則中斷擦除時必須外加輔助電路,否則中斷不能正常執行;如果選擇跳變觸發,當MAX813L工作原理及其在51單片機系統抗干擾中的應用端出現負跳變時,CPU內部硬件自動置位中斷標志IE0,CPU響應中斷,通過向量地址轉入中斷服務程序時IE0被硬件清0。所以基于上述分析,必須選用跳變觸發方式。觸發方式由定時器控制寄存器TCON中的IT0位決定。實現指令為:
        SETB TCON.0
          設計好中斷服務程序對于系統的連續可靠運行具有重要意義。在中斷服務程序中,先保存重要數據到片內RAM(掉電時由備用電源供電,相應實現電路未畫出)。發出控制信號斷開外圍設備,最后把電源控制寄存器PCON的PD位置1,激活掉電工作方式,中斷返回。中斷服務程序實現如下(其中R0代表保存的數據在內存中的緩沖區首址,DPTR代表要保存的數據在外部RAM中的緩沖區首址,R1代表要保存的數據字節量):
        INT0:MOVX A,@DPTR  ;保存數據
        MOV @R0,A
        INC R0        ;內存緩沖區指針加1
        INC DPTR       ;外存緩沖區指針加1
        DJNZ R1,INT0     ;保存完?沒完,繼續保存
        SETB PCON.1     ;激活掉電方式
        RET1    

        4 結束語
        本系統巧妙地利用MAX813L芯片,實現了單片機系統的看門狗電路、電源故障監視電路和手動、自動復位電路,電路結構緊湊,設計合理。結合本文給出的程序抗干擾設計方案,可有效地解決程序運行中出現的“死機”現象和電源故障帶來的不利影響。在我們設計氮化鎵半導體薄膜生長工藝流程實時監控系統中實際運行表明:該方案設計合理,運行可靠,抗干擾能力強,達到了滿意的使用效果,并且可推廣應用到其它的單片機控制系統中去。



        關鍵詞: MAX813L 51單片機

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 应城市| 土默特右旗| 什邡市| 曲松县| 满洲里市| 大理市| 车险| 尼勒克县| 分宜县| 凌云县| 洛川县| 疏附县| 邓州市| 永安市| 凤阳县| 乌拉特后旗| 宝丰县| 成武县| 将乐县| 抚顺市| 宜州市| 新田县| 容城县| 博白县| 新疆| 九寨沟县| 正阳县| 金川县| 吴桥县| 宿松县| 宁南县| 游戏| 伊川县| 昂仁县| 馆陶县| 罗源县| 沙洋县| 齐河县| 仲巴县| 安宁市| 湛江市|