80C51便攜式產(chǎn)品中的低功耗設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
關(guān)鍵詞:單片機(jī) 80C51 PDA 功耗 液晶
前言
80C51單片機(jī)由于功能全面、開發(fā)工具較為完善、衍生產(chǎn)品豐富、大量的設(shè)計(jì)資源可以繼承和共享,得到廣泛的應(yīng)用。我們?cè)O(shè)計(jì)的一款手持線PDA產(chǎn)品,也選擇80C51單片機(jī)作為主、輔CPU,還具備點(diǎn)陣液晶顯示屏、導(dǎo)電橡膠鍵盤、雙IC卡接口、EEPROM存儲(chǔ)器、實(shí)時(shí)時(shí)鐘和串行通信口。由于使用80C51單片機(jī)開發(fā),高級(jí)語言編程,大大降低了設(shè)計(jì)的技術(shù)風(fēng)險(xiǎn),產(chǎn)品在較短的時(shí)間內(nèi)就推向了市場(chǎng)。
但是,同一些低速的微控制器(如4位單片機(jī))和高速的RISC處理器相比,80C51單片機(jī)在功耗上沒有優(yōu)勢(shì)。為了在PDA類產(chǎn)品中發(fā)揮80C51單片機(jī)的上述特長(zhǎng),我們通過采取軟、硬件配合的一系列措施,加強(qiáng)低電壓、低功耗設(shè)計(jì),取得了良好的效果。該機(jī)使用一顆3V鈕扣式鋰電池,開機(jī)時(shí)工作電池小于4mA,瞬間最大工作電流小于20mA,瞬間最大工作電流小于20mA,關(guān)機(jī)電流小于2μA。一顆電池可以使用較長(zhǎng)的時(shí)間,達(dá)到滿意的設(shè)計(jì)指標(biāo)。
一、低電壓低功耗設(shè)計(jì)理論
在一個(gè)器件中,功耗通常用電流消耗來表示。下式表明消耗的電池與器件特性之間的關(guān)系:
Icc=C∫Vda≈ΔV·C·f (1)
式中:Icc是器件消耗的電流;Δ是電壓變化的幅值;C是器件電容和輸出容性負(fù)載的大??;f是器件運(yùn)行頻率。
從公式(1)可以得到降低系統(tǒng)功耗的理論依據(jù)。將器件供電電壓從5V降低3V,可以至少降低40%的功耗。降低器件的工作頻率,也能成比例地降低功耗。
80C51的器件電流包括兩部分:核心電流和I/O電流,即:
Icc=ICORE+II/O (2)
核心電流是內(nèi)部晶體管開關(guān)和內(nèi)部電容充放電所消耗的電流,占有器件電流的較大比例。
ICORE=Vcc·CEQ·f (3)
式中:Vcc是器件工作電壓;CEQ是內(nèi)部結(jié)點(diǎn)和走線的電容,它是器件的固有屬性,可由式(3)在一定的電流、電壓和頻率測(cè)試值下計(jì)算出來;f是核心工作頻率。
I/O電流主要是地址/數(shù)據(jù)總線、RD、WR和ALE信號(hào)消耗的電流,在器件電流中占的比例較小,其數(shù)值有以下經(jīng)驗(yàn)公式:
II/O=IREAD·(0.8)+IWRITE·(0.2)+ICONTROL (4)
IREAD、IWRITE分別是讀寫狀態(tài)的I/O電流;ICONTROL是控制信號(hào)RD、WR、ALE的電流。以寫狀態(tài)I/O電流為例:
IWRITE=(V·C·f)·(1/n)·(X+Y) (5)
式中:V=Vcc;C是每個(gè)引腳的負(fù)載電容和電路板的線路電容,大約2pF/in(in為英寸);f是CPU工作頻率;n=24,每個(gè)總線周期所花費(fèi)的機(jī)器周期數(shù);X是尋址階段變化的引腳數(shù);Y是傳輸數(shù)據(jù)階段變化引腳數(shù)。
二、PDA類產(chǎn)品中CPU的選擇
近年來80C51衍生產(chǎn)品涌現(xiàn)出許多低電壓、低功耗品種,各具特色。如:ATMEL公司AT89LV5X系列,程序存儲(chǔ)器4KB~20KB;PHILIPS公司LPC系列,高速低耗,片內(nèi)集成的多種低功耗功能,極有階段,但程序存儲(chǔ)器空間只有2KB或4KB;臺(tái)灣華邦公司W(wǎng)78LE和W77LE系列,有8~64KB程序空間和普通/高速多種型號(hào)可以選擇。選擇合適的CPU還有與后介紹的各項(xiàng)低功耗設(shè)計(jì)技術(shù)的使用有關(guān),與軟件規(guī)劃和正確編程有關(guān)。
在開發(fā)過程中,我們經(jīng)過試用和比較,發(fā)現(xiàn)適合PDA類產(chǎn)品應(yīng)用、性能價(jià)格比最高的選擇是華邦公司的W78LE516。W78LE516是華邦公司2000年發(fā)由的新產(chǎn)品,它有以下特點(diǎn)適合PDA類產(chǎn)品:
·工作電壓2.4~5.5V,適合便攜式產(chǎn)品的供電方式;
·全靜態(tài)設(shè)計(jì),工作頻率從0到最大40MHz,適合低功耗產(chǎn)品的特殊要求;
·64KB可多次編程的片內(nèi)應(yīng)用程序存儲(chǔ)器,非常適合于較大的程序和高級(jí)語言編程;
·4KB片內(nèi)引導(dǎo)程序存儲(chǔ)器,用于實(shí)現(xiàn)應(yīng)用程序的在線編程;
·比80C52多一倍的512字節(jié)片內(nèi)RAM,其有256字節(jié)AUX RAM;
·PLCC和QFP封裝比通常的80C51多4個(gè)I/O口,P4口具有多種功能;
·完善的低功耗模式,特別是中斷能夠喚醒掉電模式;
·可靠的加密編程,保護(hù)開發(fā)者的知識(shí)產(chǎn)權(quán)和勞動(dòng)成果。
三、晶振頻率是決定功耗的基本環(huán)節(jié)
在5V電壓下運(yùn)行于12MHz的80C51,工作電流達(dá)到十幾mA,無論如何難以在電流供電環(huán)境中使用。從公式(3)和圖1可以看出,工作電流與晶振頻率成嚴(yán)格的線性關(guān)系,空閑、掉電模式的電流也有類似的線性關(guān)系。因此,盡可能地降低晶振頻率能夠有效地降低整機(jī)電流;但是,降低晶振頻率往往會(huì)受到系統(tǒng)運(yùn)行速度的制約,需要綜合考慮各部分的工作速度和整機(jī)信息算是的速度,選擇一個(gè)合適的最小晶振頻率。例如,128X64點(diǎn)陣液晶采用并行總線訪問時(shí),整屏漢字顯示刷新需要80C51單片機(jī)2MHz的時(shí)鐘頻率才不會(huì)感覺響應(yīng)遲鈍;如果采用串行方式,顯示還會(huì)更慢;串行EEPROM是串行訪問數(shù)據(jù)的,還有起始停止位、地址選擇、應(yīng)答位等開銷,讀寫時(shí)間較長(zhǎng);復(fù)雜算法對(duì)系統(tǒng)運(yùn)行速度也有較高要求??紤]到串行通信波特率精確計(jì)算,我們最終確定晶振頻率為3.686MHz,最大通信波特率可達(dá)到19200bps。在這一時(shí)鐘頻率下,78LE516的運(yùn)行電流大約為3mA。
四.電壓與CPU功耗成正比
從式(3)還可以看到,降低80C51的供電電壓能夠成比例地降低功耗。由圖1可知,選擇3V供電電壓要比5V供電電壓的功耗下降一半。隨著低電壓CPU的選擇,其它部分也要選擇低電壓的型號(hào)。我們選擇的器件全部可以工作到2.7V,最終確定工作電壓為3V,由穩(wěn)壓電路提供穩(wěn)定的輸出。此外,值得一提的是,3.3V也是一個(gè)較好的選擇,因?yàn)?.3V是W78LE516在線編程(ISP)的電壓下降,ISP是一個(gè)很有價(jià)值的功能,并且3.3V電壓一睥器件也較容易得到。
五、讓空閑模式和掉電模式占用更多的時(shí)間
80C51有三種工作模式:運(yùn)行模式、空閑模式和掉電模式。正確編程以便使80C51在較多的時(shí)間內(nèi)工作在后面兩種模式下,是PDA類產(chǎn)品降低功耗的有效途徑。對(duì)于W78LE516,2.4V供電電壓和12MHz時(shí)鐘頻率下,三種模式的電流消耗如表1所列。
表1
模式 | 運(yùn)行 | 空閑 | 掉電 |
電流(max) | 3mA | 1.5mA | 20μA |
低功耗的軟件原則是讓運(yùn)行模式遠(yuǎn)比空閑、掉電模式少占用時(shí)間,尤如一個(gè)占空比很小的脈沖,消耗的能量較少。在開機(jī)狀態(tài)下,靠中斷喚醒CPU,在短暫的時(shí)間內(nèi)工作在運(yùn)行模式,處理相應(yīng)的事件,然后進(jìn)入空閑(或掉電)模式;在關(guān)機(jī)狀態(tài)下,完全進(jìn)入掉電模式。
PDA類產(chǎn)品的主要機(jī)時(shí)占用是顯示和按鍵的交互操作。僅在較短的時(shí)間內(nèi)有大量的計(jì)算,需全速運(yùn)行,顯示也是瞬間完成,大部分時(shí)間花在等待按鍵上。如果采用查詢方式,CPU鈄以運(yùn)行模式等待按鍵,耗電較大;如果采用中斷方式,則可以由中斷喚醒CPU,讓較長(zhǎng)的等待按鍵時(shí)間,都處在空閑模式(或掉電模式)。
中斷有兩種實(shí)現(xiàn)方式:一種是鍵盤接到外部中斷引腳,外部中斷喚醒CPU;一種是采用定時(shí)器中斷,定時(shí)喚醒CPU,完成鍵盤處理和其它工作后CPU又進(jìn)入休眠狀態(tài)。
令人耳目一新的是,通常的80C51從掉電模式喚醒到運(yùn)行模式,只能靠硬件復(fù)位;而78LE516可以通過第二途徑——中斷INT0和INT1來喚醒,這對(duì)于PDA類產(chǎn)品權(quán)為有利。因?yàn)榈綦娔J降墓模瑫?huì)比空閑模式小2~3個(gè)數(shù)量級(jí),整機(jī)功耗將會(huì)進(jìn)一步降低。類似的功能在PHILIPS公司的PLC系列低功耗單片機(jī)中也提供。
六、外圍器件的合理使用
由于外圍器件的使用不是很頻繁,所以要選擇帶片選功能的外圍器件, 不使用它們時(shí)進(jìn)入低功耗模式。
減少外圍器件的使用是PDA類產(chǎn)品降低功耗、減小體積的積極辦法,但這要視系統(tǒng)可行性而定,并需要軟件的配合。例如,使用78LE516內(nèi)部64KB程序空間,對(duì)中等規(guī)模的系統(tǒng)已經(jīng)足夠,可以不使用外部程序存儲(chǔ)器;使用好78LE516內(nèi)部RAM,尤其是比80C52多出的內(nèi)部256字節(jié)AUX RAM,可以節(jié)省外部RAM和尋址電路,這需要對(duì)軟件很好地規(guī)劃;78LE516的P4口可以義為指定外部地址的設(shè)備片選信號(hào),可以節(jié)省外部地址譯碼電路。
不可小視CMOS器件未使用的輸入口。一個(gè)懸空的輸入端不但可能因?yàn)槠涓咻斎胱杩苟袘?yīng)電荷,損壞器件,而且可能造成不斷喚醒CPU,不能進(jìn)入掉電模式。假如輸入口感應(yīng)到較高頻率的信號(hào)。增加的電流甚至高達(dá)20mA。這一結(jié)論從公式(1)的理論和開實(shí)踐都可以驗(yàn)證。正確的處理辦法是將未使用的輸入接到Vcc或地。
七、關(guān)機(jī)后關(guān)斷整機(jī)電源
對(duì)于鈕扣電池供電的設(shè)備,關(guān)機(jī)態(tài)的電流消耗也是不可忽略的。10μm的關(guān)機(jī)電流累積一個(gè)月,就會(huì)消耗大于6%的電池容量。
關(guān)斷整機(jī)電流的簡(jiǎn)單方法是用CMOS觸發(fā)器控制一個(gè)晶體管做的電子開關(guān),通常開關(guān)三極管的截止電流小于500mA。
圖2是我們?cè)O(shè)計(jì)的智能電源控制電路,靠一個(gè)耗電極少的單片機(jī)PIC12LC508A控制晶體管電子開關(guān)和DC-DC變換器,可以實(shí)現(xiàn)單鍵開關(guān)機(jī)、自動(dòng)關(guān)機(jī)、禁止關(guān)機(jī)、定時(shí)開機(jī)等功能。
現(xiàn)在,越來越多的電池變換芯片具有SHUT DOWN引腳和電流與負(fù)載斷開的功能。采用這一特性實(shí)現(xiàn)的電路,使用與圖2類似的原理,關(guān)機(jī)電流也可以達(dá)到1μA以下。