低功耗模式下微控制器時鐘配置應(yīng)用
在微控制器的低功耗應(yīng)用中,對時鐘的設(shè)置是很重要的一個方面。不同類型的微控制器在低功耗模式下對時鐘的配置也各有不同。飛思卡爾公司推出的增強型8位微控制器 HCS08系列具有很強的低功耗性能。其中,HCS08系列里的MC9S08QG8在同類產(chǎn)品的基礎(chǔ)上對低功耗應(yīng)用下的時鐘又有了進一步的改進。
本文引用地址:http://cafeforensic.com/article/78252.htm1 MC9S08QG8及其內(nèi)部時鐘模塊介紹
微控制器MC9S08QG8是飛思卡爾公司新推出的一款8位增強型微控制器。它是小封裝、低功耗的產(chǎn)品,但這并不意味著它是“低端”的產(chǎn)品;相反,它是一個高度集成的、功能豐富的、適用于各種應(yīng)用的低價位單片機。MC9S08QG8采用高性能、低功耗的HCS08內(nèi)核,具有很高的集成度,還包括更長的電池壽命(即使工作電壓低至1.8V,也能發(fā)揮最大效能)、業(yè)界領(lǐng)先的Flash技術(shù)以及創(chuàng)新的開發(fā)支持。MC9S08QG8集成了背景調(diào)試系統(tǒng)(BDM)以及可進行實時總線捕捉的內(nèi)置在線仿真(ICE)功能,具有單線的調(diào)試及仿真接口。
MC9S08QG8微控制器的運行模式有很多種,包括正常運行模式、等待模式、背景調(diào)試模式以及停止模式。其中,與低功耗應(yīng)用關(guān)系密切的停止模式又分為3個階段:
停止模式l——內(nèi)部電路全部斷電,以最大限度地節(jié)省電源;
停止模式2——可選擇部分斷電,RAM內(nèi)容保持;
停止模式3——內(nèi)部電路都可快速恢復(fù)運行,RAM、Flash內(nèi)容保持。
MC9S08QG8內(nèi)部時鐘模塊由4個子模塊組成:鎖頻環(huán)、內(nèi)部參考時鐘、外部振蕩器、時鐘選擇邏輯模塊,如圖l所示。
鎖頻環(huán)的輸出頻率為參考時鐘頻率的512倍,包括3個主要部分:參考頻率選擇、數(shù)字控制振蕩器和用于比較這兩個部分輸出的濾波器。
鎖頻環(huán)是通過比較數(shù)字控制振蕩器時鐘與參考時鐘的頻率來工作的。鎖頻環(huán)對一個參考時鐘周期內(nèi)的數(shù)字控制振蕩器時鐘脈沖邊沿數(shù)進行計數(shù),因此,對于512倍的倍頻器,鎖頻環(huán)應(yīng)該在參考時鐘的每兩個上升沿之間得到512個數(shù)字控制振蕩器輸出的上升沿。鎖頻環(huán)的實現(xiàn)大多借助數(shù)字邏輯電路,不需要外部濾波器件。
內(nèi)部參考時鐘是一個可調(diào)整的內(nèi)部參考時鐘信號,既可用作鎖頻環(huán)的參考時鐘,也可直接用作CPU和總線時鐘的時鐘
源。這個內(nèi)部參考時鐘不需要諸如調(diào)整電容或電阻等外部元件。內(nèi)部參考時鐘由寄存器中的一個9位數(shù)值進行調(diào)整,解析度典型值能達到未調(diào)整內(nèi)部參考時鐘頻率的O.1%。與許多其他的內(nèi)部參考時鐘不同,這個內(nèi)部參考時鐘可將頻率在一定范圍內(nèi)進行調(diào)整,從31.25 kHz變到39.06 kHz。當(dāng)用作鎖頻環(huán)的參考時鐘時,允許用戶用O.1%的解析度,把總線頻率設(shè)定為8 MHz~10 MHz的任意值。
實際上,外部振蕩器參考時鐘把三個外部時鐘源合并在一個里面。它有一個采用32 kHz~38.4 kHz晶振或諧振器的低頻振蕩器,還有一個采用1 MHz~16 MHz晶振或諧振器的高頻振蕩器。這兩個振蕩器需要兩個引腳(即XTAL和EXTAL)來生成時鐘信號。外部振蕩器還有一種外部時鐘模式。該模式簡單地把一個外部時鐘信號引入MCU。在此模式中,只需要EXTAL腳,而XTAL腳可用作通用I/O。輸入頻率可以是OHz~20MHz之間的任意值。由于引腳的限制,有些MCU可能沒有外部振蕩器。
時鐘選擇邏輯只是簡單地選擇鎖頻環(huán)、外部參考時鐘或內(nèi)部參考時鐘作為內(nèi)部時鐘源模塊的輸出。此外,還采用了一個時鐘分頻器電路,可以對輸出進行1倍、2倍、4倍或8倍分頻,用以降低輸出時鐘的頻率。
2 內(nèi)部時鐘源的工作模式
2.1 關(guān)斷模式
當(dāng)進入微控制器的任何一種低功耗停止模式時,內(nèi)部時鐘源模塊將被關(guān)斷。在關(guān)斷模式中,鎖頻環(huán)是關(guān)閉的,以節(jié)省功耗;然而,在停止3模式中,可以選擇將外部參考時鐘、內(nèi)部參考時鐘或二者都保持在運行狀態(tài)。這項功能使某些模塊可以在停止3模式中繼續(xù)運行。比如,實時中斷模塊等,它能繼續(xù)用外部參考時鐘作為其參考時鐘。如果在應(yīng)用中沒有需要繼續(xù)使用的模塊,參考時鐘應(yīng)關(guān)閉,以得到最低的運行功耗。
2.2 FEI模式
FEI(FLL啟用、選用內(nèi)部參考時鐘)模式是芯片復(fù)位后的缺省模式,鎖頻環(huán)處于運行狀態(tài)可驅(qū)動CPU和總線時鐘,采用內(nèi)部時鐘源作為其參考時鐘。FEI模式下的總線頻率可按下式計算:
MC9S08QG8的內(nèi)部參考時鐘頻率可以在3l.25kHz~39.06 kHz的范圍內(nèi)進行調(diào)整,因此經(jīng)過512倍頻后,可以輸出16 MHz~20MHz。與其他同類產(chǎn)品不同的是,在復(fù)位發(fā)生后,上述時鐘分頻器會給輸出時鐘一個強制的2分頻。這是為了在內(nèi)部時鐘模塊未經(jīng)調(diào)整且運行頻率高于31.25kHz的時候,對系統(tǒng)提供保護。如果運行頻率高于8 MHz,就超出了MC9S08QG8低電壓(小于2.1V)的最大頻率規(guī)定值。
每一次上電復(fù)位后,內(nèi)部參考時鐘都應(yīng)當(dāng)進行調(diào)整,以得到精確的頻率。
2.3 FEE模式
FEE(FLL啟用、選用外部參考時鐘)模式下,鎖頻環(huán)處于運行狀態(tài),可驅(qū)動CPU和總線時鐘,采用外部時鐘源作為其參考時鐘。為了讓系統(tǒng)正常運行,鎖頻環(huán)的輸出要求在16 MHz~20MHz之間。這樣外部參考時鐘會受到限制。內(nèi)部時鐘源模塊有一個參考時鐘分頻器,可用于降低外部參考時鐘的頻率,表l列出了根據(jù)分頻設(shè)置所能容許的外部頻率。
FEI模式下的總線頻率可按下式計算:
2.4 FBI和FBILP模式
FBI(鎖頻環(huán)旁路、內(nèi)部參考時鐘)和FBILP(鎖頻環(huán)旁路、內(nèi)部參考時鐘低功耗)模式均旁路鎖頻環(huán),而直接采用內(nèi)部時鐘源生成時鐘信號。不同之處在于,F(xiàn)BI模式讓鎖頻環(huán)保持運行,而FBILP模式則關(guān)閉鎖頻環(huán),從而降低更多的功耗。 FBILP是通過配置為FBI并設(shè)定ICS控制寄存器2(ICSC2)中的LP位來啟動的。
采用FBI而非FBILP的原因之一,是為了采用背景調(diào)試模式(BDM);其二,當(dāng)需要切換到FEI時可節(jié)省鎖頻環(huán)的鎖定時間。鎖頻環(huán)必須處于運行狀態(tài)才
能給背景調(diào)試模式通信提供一個高速時鐘源。鎖定時間的最大規(guī)定值為lms,通常需要約500μs。關(guān)閉鎖頻環(huán)可節(jié)省大約220~310μA的電流。
2.5 FBE和FBELP模式
FBE(FLL旁路、外部參考時鐘)和FBELP(FLL旁路、外部參考時鐘低功耗)模式與2.4小節(jié)中的FBI和FBILP模式類似。除了是用外部時鐘產(chǎn)生時鐘源,而不是用內(nèi)部時鐘源外,F(xiàn)LL仍被旁路,LP位則在未啟動BDM時關(guān)閉鎖頻環(huán)。
3 低功耗模式中的內(nèi)部時鐘源
3.1 停止1和停止2模式
當(dāng)MCU進入停止1或停止2模式時,內(nèi)部時鐘源總是被置于關(guān)斷模式。因此,執(zhí)行STOP指令時。內(nèi)部時鐘模塊所處的模式無關(guān)緊要,也不會影響處于停止l和停止2期間的功耗。
由于停止1和停止2模式均導(dǎo)致MCU在停止恢復(fù)時執(zhí)行上電復(fù)位,因此,復(fù)位后的模式總是 FEI,總線分頻被設(shè)置為2分頻,產(chǎn)生大約4MHz的總線時鐘。內(nèi)部時鐘調(diào)整位ICSTRM將被重置為0x80,微調(diào)寄存器的FTRIM位會被清零,所以如果要采用內(nèi)部參考時鐘,則須對它進行重新校準(zhǔn);如果調(diào)整值已保存在Flash存儲器中,則須把保存值重新載入寄存器。
3.2 停止3模式
當(dāng)進入停止3模式后,內(nèi)部時鐘源的大部分(包括鎖頻環(huán))將關(guān)閉。內(nèi)部時鐘源在執(zhí)行STOP指令時所處的模式不會影響停止3的功耗。但是,ICS的兩個控制位,IREFSTEN和EREFSTEN會影響停止3的電流。若置1,則IREFSTEN可使 IRC在停止3模式中保持啟用狀態(tài);
同樣,若置1,則EREFSTEN可使OSC在停止3模式中保持啟用狀態(tài)。將IREFSTEN置位,將產(chǎn)生約100μA的停止3電流;將EREFSTEN置位,將對停止3電流產(chǎn)生不同的影響,取決于OSC的頻率和設(shè)置。
如果因復(fù)位而退出停止3,ICS會像停止1或停止2的恢復(fù)那樣回復(fù)至FEI模式。不同之處是調(diào)整值不會重置,除非發(fā)生了上電復(fù)位。
4 內(nèi)部時鐘校準(zhǔn)
系統(tǒng)經(jīng)過上電復(fù)位后,ICSTRM將被重置為0x80,F(xiàn)TRIM位會被清零。如果要采用內(nèi)部參考時鐘,則需要對其進行重新校準(zhǔn)。增大ICSTRM的值,將降低參考時鐘頻率;相反,減小ICSTRM的值,將提高參考時鐘頻率。FTRIM置0或1會更精細地對頻率進行調(diào)整。根據(jù)這個原理,內(nèi)部時鐘校準(zhǔn)的程序流程框圖如圖2所示。
關(guān)于具體的程序町根據(jù)參考文獻編制。待ICGTRM和FTRIM選定后,可存入微控制器的Flash中,下次上電復(fù)位后直接讀取數(shù)值載入即可。
結(jié)語
恰當(dāng)?shù)剡\用時鐘設(shè)置,對于降低微控制器的功耗有很大幫助。在微控制器各種不同的運行模式下,時鐘都有不同的配置方法與之配合。同樣的方案也適用于功能類似的微控制器。巧妙地運用各種時鐘模式,可以使系統(tǒng)的功耗最低。
評論