專利名稱:一種微控制器的電壓變化處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種微控制器的電壓變化處理方法,特別涉及一種針對系統(tǒng)電壓變化的微控制器的處理方法。
背景技術(shù):
微控制器的種類非常繁多,包括嵌入式、單片式、RISC型、8bit、16bit、表面安裝式、扁平式等。
從消費性產(chǎn)品到通訊產(chǎn)品,微控制器有著非常廣泛地應(yīng)用,目前的微控制器不僅能夠完成高運算量的任務(wù),而且成本很低,因此產(chǎn)品的應(yīng)用非常成功。微控制器非常擅長于有序處理和各種非實時的任務(wù),典型的工作速度在20MHz左右,但有些微控制器核心需要將該時鐘脈沖頻率內(nèi)部分頻,每條指令用多個時鐘脈沖周期。例如,CISC微控制器在執(zhí)行一條乘法指令時最多要用到25條簡化的指令。
另目前市場上已經(jīng)有非常多的RISC微控制器,它們不僅能夠?qū)崿F(xiàn)單個時鐘脈沖指令周期,而且功率非常低。例如Atmel的AVR微控制器在1MHz時鐘脈沖條件下能夠獲得1MIP的性能。由于有著如此強大的性能,幾乎沒有什么任務(wù)是微控制器不能完成的。這些微控制器的尺寸都非常小,品種從單個ALU和帶通用I/O的存儲器到多功能仿真和總線接口不一而足。
微控制器對指令的運作為先對存儲器(可編程只讀存儲器與隨機存取存儲器)取出下一動作步驟的指令或數(shù)據(jù),請參閱圖1,是一般微控制器的動作流程示意圖。經(jīng)過取出11后的信號將送至寄存器進行指令鎖存12的動作,最后將該被鎖存12的指令執(zhí)行13,此動作包括譯碼與送出控制信號,然后再回到取出11動作,依此循環(huán)。
現(xiàn)有的微控制器中的監(jiān)控系統(tǒng),當這些微控制器在開機、關(guān)機或突然死機時,必須要能正確地重置芯片,使微處理機內(nèi)部程序從頭開始執(zhí)行。當系統(tǒng)電壓變化過于劇烈時,內(nèi)含微處理機的系統(tǒng)常會因電壓的不穩(wěn)定而產(chǎn)生誤動作。
目前最常見的解決方案如圖2所示,在系統(tǒng)中加入一低電壓偵測器24,對于系統(tǒng)電源突然為低電壓時,如前述所述,先由存儲器21取出指令信號,將指令信號存到指令寄存器22進行鎖存的動作,再經(jīng)過指令譯碼器23,對指令信號進行編譯并執(zhí)行,然后發(fā)出控制信號。而系統(tǒng)電壓會接收一低電壓偵測器24,且該低電壓偵測器24會將偵測到的信號送至一重置電路25,當信號為一低電壓信號時,將會驅(qū)動該重置電路25,使其送出重置信號,且該重置信號也會送至存儲器21、指令寄存器22、及指令譯碼器23,使系統(tǒng)內(nèi)各元件重置。其動作流程可如以下程序表示如果(低電壓偵測器啟動),則,重置CPU,否則,正常運行(取出->鎖存->執(zhí)行)對于一般具有低電壓偵測器24的微控制器,常因低電壓偵測器24偵測到電壓的抖動而產(chǎn)生重置信號,使系統(tǒng)重新重置,但有時電壓的抖動只是短暫性,微控制器系統(tǒng)并非是真的處于無法工作的低電壓。所以為了避免低電壓偵測器24的誤判,通常的解決方式是在系統(tǒng)外加入一些電路元件,以避免誤判。但外加電路元件的解決方法對于微控制器的使用者而言,將會增加電路的復(fù)雜度,這樣不僅會失去電路的可靠度,無形中也會增加制作成本。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題在于,在不增加外加電路元件的情況下,借著改變微控制器的內(nèi)部架構(gòu),當?shù)碗妷簜蓽y器偵測到電壓的抖動時,強制微控制器維持現(xiàn)狀,使系統(tǒng)可有效地減少重置的次數(shù),增加系統(tǒng)的穩(wěn)定性。
本發(fā)明要解決的另一技術(shù)問題在于,對于不論系統(tǒng)電壓變化趨勢是上升或下降,都將會強制微控制器維持現(xiàn)狀,直到系統(tǒng)電壓穩(wěn)定后,再繼續(xù)往下執(zhí)行程序。
本發(fā)明是一種微控制器的電壓變化處理方法,對于微控制器系統(tǒng)內(nèi)依序運作的程序計數(shù)器、存儲器、指令寄存器、與指令譯碼器,將一低電壓偵測器的信號接到該程序計數(shù)器、存儲器、指令寄存器,當該低電壓偵測器動作產(chǎn)生時,此時令微控制器處于凍結(jié)狀態(tài),直到系統(tǒng)低電壓狀態(tài)結(jié)束電壓穩(wěn)定后,再進行下一程序計數(shù)(PC)應(yīng)該的運作。
另外,該低電壓偵測器也可由一電壓監(jiān)視器替代,當該系統(tǒng)電壓有下降或上升的變化,而電壓監(jiān)視器產(chǎn)生動作時,令微控制器處于凍結(jié)狀態(tài),直到系統(tǒng)電壓變化狀態(tài)結(jié)束電壓穩(wěn)定后,再進行下一程序計數(shù)應(yīng)該的運作。
這樣,對于微控制器的使用者而言,可以很簡單地使用微控制器,不需外加額外的設(shè)計,且可以很有效地減少系統(tǒng)重置的次數(shù),增加系統(tǒng)的穩(wěn)定性。
圖1是普通微控制器的動作流程示意圖。
圖2是現(xiàn)有技術(shù)中的微控制器對于低電壓的處理方法示意圖。
圖3是本發(fā)明的微控制器對于低電壓的處理方法示意圖。
圖4是本發(fā)明對于電壓變化的另一處理方法示意圖。
具體實施例方式
有關(guān)本發(fā)明的詳細內(nèi)容及技術(shù)說明,現(xiàn)結(jié)合
如下請參閱圖3所示,是本發(fā)明的微控制器對于低電壓的處理方法的示意圖。如圖所示,本發(fā)明是一種微控制器的電壓變化處理方法,對于微控制器系統(tǒng)內(nèi)依序運作的程序計數(shù)器35、存儲器31、指令寄存器32與指令譯碼器33,如一般微控制器描述的運作,先由存儲器31取出指令信號,將指令信號存到指令寄存器32進行鎖存的動作,再經(jīng)過指令譯碼器33,對指令信號進行編譯并執(zhí)行,然后發(fā)出控制信號。而系統(tǒng)電壓會接到一低電壓偵測器34,且該低電壓偵測器34的信號接到該程序計數(shù)器35、存儲器31、與指令寄存器32,當該低電壓偵測器34產(chǎn)生動作時,此時令微控制器處于凍結(jié)狀態(tài),即程序計數(shù)器35保持原值,使下一程序計數(shù)(PC)失去動作能力(disable PC+1),且此時令指令寄存器32內(nèi)容值為“NOP”(此“NOP”指令為什么都不進行,直接跳到下一行)及停止所有存儲器31的存取等措施而非像現(xiàn)有技術(shù)那樣使系統(tǒng)重新重置。而此微控制器凍結(jié)狀態(tài)將循環(huán)持續(xù)直到系統(tǒng)低電壓狀態(tài)結(jié)束電壓穩(wěn)定后,再進行下一程序計數(shù)應(yīng)該的運作。其動作流程可如以下程序表示
如果(低電壓偵測器啟動),則,等待(同步),凍結(jié)CPU狀態(tài)(PC=PC,IR=NOP,等),直到(低電壓偵測器停止),否則,正常運行另外,該低電壓偵測器34也可由一電壓監(jiān)視器36替代,如圖4所示。將一電壓監(jiān)視器36的信號接到該程序計數(shù)器35、存儲器31、與指令寄存器32,當該系統(tǒng)電壓有變化,其中該電壓變化包括上升或下降趨勢且超過系統(tǒng)可容許范圍,使電壓監(jiān)視器36產(chǎn)生動作,此時令微控制器處于凍結(jié)狀態(tài),相同即程序計數(shù)器35保持原值,使下一程序計數(shù)失去動作能力(disable PC+1),且此時令指令寄存器32內(nèi)容值為“NOP”(此“NOP”指令為什么都不進行,直接跳到下一行)及停止所有存儲器31的存取等措施。而此微控制器凍結(jié)狀態(tài)將循環(huán)持續(xù)到系統(tǒng)電壓變動狀態(tài)結(jié)束電壓穩(wěn)定后,再進行下一程序計數(shù)應(yīng)該的運作。其動作流程可如以下程序表示如果(電壓劇烈變化),則,等待(同步),凍結(jié)CPU狀態(tài)(PC=PC,IR=NOP,等),直到(電壓變化監(jiān)視器停止),否則,正常運行綜前所述可知,本發(fā)明的微控制器的電壓變化處理方法是在不增加外加電路元件的情況下,借著改變微控制器的內(nèi)部架構(gòu),當?shù)碗妷簜蓽y器34偵測到電壓的抖動時,強制微控制器處于凍結(jié)狀態(tài),維持現(xiàn)狀,促使系統(tǒng)有效地減少重置的次數(shù),增加系統(tǒng)的穩(wěn)定性。
更進一步地,發(fā)明可將低電壓偵測器34以一電壓監(jiān)視器36替代,這樣不論微控制器系統(tǒng)電壓變化趨勢是上升還是下降,都將會可觸發(fā)且強制微控制器維持現(xiàn)狀,直到系統(tǒng)電壓穩(wěn)定后,再繼續(xù)往下執(zhí)行程序。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則的內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包括在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種微控制器的電壓變化處理方法,對于微控制器系統(tǒng)內(nèi)依序運作的程序計數(shù)器(35)、存儲器(31)、指令寄存器(32)、與指令譯碼器(33),其特征在于所述微控制器的電壓變化處理方法包括將一低電壓偵測器(34)的信號接到所述程序計數(shù)器(35)、存儲器(31)、與指令寄存器(32);當所述低電壓偵測器(34)產(chǎn)生動作時,令所述微控制器處于凍結(jié)狀態(tài)所述指令寄存器(32)的內(nèi)容值為“NOP”,所述程序計數(shù)器(35)保持原值,停止所述存儲器(31)的存??;直到系統(tǒng)低電壓狀態(tài)結(jié)束電壓穩(wěn)定后,再進行下一程序計數(shù)應(yīng)進行的運作。
2.一種微控制器的電壓變化處理方法,對于微控制器系統(tǒng)內(nèi)依序運作的程序計數(shù)器(35)、存儲器(31)、指令寄存器(32)、與指令譯碼器(33),其特征在于所述微控制器的電壓變化處理方法包括將一電壓監(jiān)視器(36)的信號接到所述程序計數(shù)器(35)、存儲器(31)、與指令寄存器(32);當所述系統(tǒng)電壓有變化,而所述電壓監(jiān)視器(36)產(chǎn)生動作時,使所述微控制器處于凍結(jié)狀態(tài)所述指令寄存器(32)的內(nèi)容值為“NOP”,所述程序計數(shù)器(35)保持原值,停止所述存儲器(31)的存??;直到系統(tǒng)電壓變化狀態(tài)結(jié)束電壓穩(wěn)定后,再進行下一程序計數(shù)應(yīng)進行的運作。
3.根據(jù)權(quán)利要求2所述的微控制器的電壓變化處理方法,其特征在于,所述系統(tǒng)電壓變化包括上升與下降的趨勢。
全文摘要
本發(fā)明公開了一種微控制器的電壓變化處理方法,將一低電壓偵測器/電壓監(jiān)視器的信號接到該程序計數(shù)器、存儲器、指令寄存器,當該低電壓偵測器/電壓監(jiān)視器產(chǎn)生動作時,使得微控制器處于凍結(jié)狀態(tài),直到系統(tǒng)電壓穩(wěn)定后,再進行下一程序計數(shù)應(yīng)進行的運作,藉此可以有效地減少系統(tǒng)重置的次數(shù),增加系統(tǒng)的穩(wěn)定性。
文檔編號G05F1/10GK1779589SQ20041008899
公開日2006年5月31日 申請日期2004年11月23日 優(yōu)先權(quán)日2004年11月23日
發(fā)明者黃清火 申請人:矽創(chuàng)電子股份有限公司