一種微機系統(tǒng)掉電檢測與數(shù)據(jù)存儲電路的制作方法
【技術領域】
[0001 ] 本發(fā)明涉及一種微機系統(tǒng)檢測與存儲電路,特別是一種微機系統(tǒng)掉電檢測與數(shù)據(jù)存儲電路。
【背景技術】
[0002]在微機控制系統(tǒng)中,CPU要執(zhí)行的程序、要處理的數(shù)據(jù)和處理的中間結果等都存放在存儲器中,目前微機的存儲器幾乎全部采用易失性存儲器,一旦系統(tǒng)意外失電,這些數(shù)據(jù)往往被丟失。因此,當系統(tǒng)意外失電時必須采取一定的檢測措施進行系統(tǒng)的掉電保護,以避免系統(tǒng)產生混亂。
[0003]目前常用的掉電檢測與數(shù)據(jù)存儲電路也都包括:微處理器,還包括:時鐘電路、掉電檢測電路和鐵電存儲器三部分。在時鐘電路設計時,牽涉到備用電源的選擇,備用電源通常選用電池,但是由于電池的體積大,還需要安裝底座,并且當電量用盡時,需要經(jīng)常替換或取下充電,這樣為電路板設計和生產安裝及設備運行帶來不便。
[0004]存儲器是微機系統(tǒng)的記憶部件,其種類分為易失性和非易失性兩類。若采用易失性存儲器,為了防止斷電后存儲的數(shù)據(jù)丟失,必須增加備用電源為其供電,這就又增加了電路的復雜性,而非易失性存儲器則斷電后存儲的數(shù)據(jù)不丟失。傳統(tǒng)的非易失性存儲器技術均源自ROM技術,有不易寫入、寫入需要特大功耗等缺點。
[0005]掉電檢測電路,若存儲器選用帶備用電源的易失性存儲器,掉電檢測電路不但要實現(xiàn)電壓檢測預警,還要實現(xiàn)易失性存儲器備用電源的切換。若存儲器選用非易失性存儲器,則無需備用電源切換。因此掉電檢測電路的設計與存儲器的選型相互關聯(lián)。
【發(fā)明內容】
[0006]本發(fā)明目的在于提供一種微機系統(tǒng)掉電檢測和數(shù)據(jù)存儲電路,解決微機系統(tǒng)防止掉電數(shù)據(jù)丟失,重新上電數(shù)據(jù)及時恢復問題。
[0007]一種微機系統(tǒng)掉電檢測與數(shù)據(jù)存儲電路,包括:微處理器,還包括:時鐘電路、掉電檢測電路和鐵電存儲器,其中,時鐘電路,包括:時鐘芯片DS1302、晶振、電容C1、二極管D1、電阻R1、電阻R2、電阻R3和電阻R4 ;掉電檢測電路,包括:分壓電阻R5、分壓電阻R6和掉電檢測芯片MAX693ESE ;鐵電存儲器型號為FM22L16-55-TG。時鐘芯片DS1302的SCLK、1/0、/RST分別與微處理器的SCLK、1/0、/RST連接,其中時鐘芯片DS1302的SCLK與上拉電阻R2的一端連接,上拉電阻R2的另一端與系統(tǒng)電源VCC相連,時鐘芯片DS1302的I/O與上拉電阻R3的一端連接,上拉電阻R3的另一端與系統(tǒng)電源VCC相連,時鐘芯片DS1302的/RST與上拉電阻R4的一端連接,上拉電阻R4的另一端與系統(tǒng)電源VCC相連,時鐘芯片DS1302的XI和X2分別與晶振兩端連接,時鐘芯片DS1302的VCC1與電容C1的正極連接,電容C1的負極與系統(tǒng)地GND連接,系統(tǒng)電源VCC與二極管D1的正極連接,二極管D1的負極與電阻R1的一端連接,電阻R1的另一端均與電容C1的正極和時鐘芯片DS1302的VCC1連接,時鐘芯片DS1302的GND與系統(tǒng)GND連接,時鐘芯片DS1302的VCC2與系統(tǒng)電源VCC連接。掉電檢測芯片MAX693ESE的VBAT與系統(tǒng)GND連接,掉電檢測芯片MAX693ESE的Vout與系統(tǒng)工作電壓VCC連接;分壓電阻R5的一端均與掉電檢測芯片MAX693ESE的比較檢測電壓輸入端PFI和分壓電阻R6的一端連接,分壓電阻R5的另一端與系統(tǒng)電源VCC連接,分壓電阻R6的另一端與系統(tǒng)GND連接;掉電檢測芯片MAX693ESE的比較檢測電壓輸出端/PF0與微處理器中斷輸入端口 INT連接。鐵電存儲器FM22L16-55-TG的18根地址線A0到A17分別與微處理器的18根地址線A0到A17——對應連接,鐵電存儲器FM22L16-55-TG的16位數(shù)據(jù)線的低8位數(shù)據(jù)線DO到D7分別與微處理器的DO到D7——對應連接、鐵電存儲器FM22L16-55-TG的16位數(shù)據(jù)線的高8位數(shù)據(jù)線D8到D15分別與微處理器的DO到D7 —一對應連接,鐵電存儲器FM22L16-55-TG的片選信號/CE與微處理器的/CS連接,鐵電存儲器FM22L16-55-TG的寫使能/WE、讀使能/0E分別與微處理器的寫讀控制信號/WE、/RD對應連接,鐵電存儲器FM22L16-55-TG的高低字節(jié)選擇/UB、/LB及睡眠模式選擇/ZZ分別與微處理器的三個I/O 口對應連接。
[0008]掉電檢測芯片MAX693ESE的比較檢測電壓輸入端PFI的輸入電壓是1.25V,由分壓電阻R5、分壓電阻R6對系統(tǒng)工作電壓VCC分壓,使比較檢測電壓輸入端PFI輸入電壓為1.25V。在系統(tǒng)電源VCC下降過程中,當?shù)綦姍z測芯片MAX693ESE的比較檢測電壓輸入端PFI輸入為1.25V時,掉電檢測芯片MAX693ESE的/PF0輸出低電平,觸發(fā)微處理器中斷,進行時間數(shù)據(jù)和系統(tǒng)數(shù)據(jù)存儲操作,若掉電檢測芯片MAX693ESE的比較檢測電壓輸入端PFI輸入大于1.25V時,掉電檢測芯片MAX693ESE的/PF0輸出拉高,不進行數(shù)據(jù)存儲。
[0009]時鐘芯片DS1302由時鐘芯片DS1302的VCC1和VCC2兩者中的較大者供電,當時鐘芯片DS1302的VCC2的電壓值大于時鐘芯片DS1302的VCC1的電壓值0.2V時,時鐘芯片DS1302的VCC2給時鐘芯片DS1302供電,當時鐘芯片DS1302的VCC2的電壓值小于時鐘芯片DS1302的VCC1的電壓值時,時鐘芯片DS1302由時鐘芯片DS1302的VCC1供電。當系統(tǒng)正常供電時,時鐘芯片DS1302的VCC2等于系統(tǒng)電源VCC,由系統(tǒng)電源VCC為時鐘芯片DS1302供電,同時系統(tǒng)電源VCC通過二極管D1給電容C1充電;當系統(tǒng)掉電時,時鐘芯片DS1302的VCC2的電壓值小于時鐘芯片DS1302的VCC1的電壓值,且時鐘芯片DS1302的VCC1等于電容C1的端電壓,由于二極管的反向截至特性,電容C1只給時鐘芯片DS1302供電,保證時鐘電路在掉電狀態(tài)下繼續(xù)工作,維持系統(tǒng)時間的連續(xù)性。在系統(tǒng)掉電時,讀取時鐘芯片DS1302此時的系統(tǒng)時間,并保存在鐵電存儲器FM22L16-55-TG中。對時鐘芯片DS1302進行讀寫操作,必須把時鐘芯片DS1302的/RST置高電平,若時鐘芯片DS1302的/RST為低電平,則終止所有的數(shù)據(jù)傳送,并且該管腳為高阻抗狀態(tài)。在時鐘芯片DS1302的/RST保持低電平時,時鐘芯片DS1302的SCLK也必須保持低電平。對時鐘芯片DS1302進行讀操作,時鐘芯片DS1302的/RST為高電平,先在八個時鐘周期的上升沿輸入一個讀地址/命令字節(jié),緊跟八個時鐘周期的下降沿,數(shù)據(jù)被讀出,并且數(shù)據(jù)從BitO位到Bit7位依次輸出。對時鐘芯片DS1302進行寫操作,時鐘芯片DS1302的/RST為高電平,先在八個時鐘周期的上升沿輸入一個寫地址/命令字節(jié),緊跟八個時鐘周期的上升沿,數(shù)據(jù)被寫入時鐘芯片DS1302,并且數(shù)據(jù)從BitO位開始到Bit7位依次寫入。
[0010]當?shù)綦姍z測電路產生掉電中斷觸發(fā)信號時,微處理器開始對鐵電存儲器FM22L16-55-TG進行寫操作,把此時的系統(tǒng)時間和系統(tǒng)數(shù)據(jù)寫入鐵電存儲器FM 2 2 L16 - 5 5 - T G,保證系統(tǒng)數(shù)據(jù)的完整性。當系統(tǒng)重新上電時,微處理器對鐵電存儲器FM22L16-55-TG進行讀操作,對系統(tǒng)數(shù)據(jù)進行重新恢復。對鐵電存儲器FM22L16-55-TG進行讀寫操作時,鐵電存儲器FM22L16-55-TG的/CE是低電平且鐵電存儲器FM22L16-55-TG的/ZZ是高電平,選擇鐵電存儲器FM22L16-55-TG,并在鐵電存儲器FM22L16-55-TG的/CE的下降沿地址被鎖存;在鐵電存儲器FM22L16-55-TG的/CE是低電平時,改變鐵電存儲器FM22L16-55-TG的A0和A1地址,按頁模式操作;寫操作時,在鐵電存儲器FM22L16-55-TG的/WE上升沿數(shù)據(jù)被寫入數(shù)據(jù)總線,下降沿數(shù)據(jù)保持;讀操作時,當鐵電存儲器FM22L16-55-TG的/0E低電平,鐵電存儲器FM22L16-55-TG驅動數(shù)據(jù)總線讀出數(shù)據(jù);若按高低字節(jié)讀寫操作時,當鐵電存儲器FM22L16-55-TG的/UB為低電平時,高字節(jié)操作,使能鐵電存儲器FM22L16-55-TG的D8到D15高8位數(shù)據(jù)線,當鐵電存儲器FM22L16-55-TG的/UB高電平時