低功耗設(shè)計(jì)并不僅僅是為了省電,更多的好處在于降低了電源模塊及散熱系統(tǒng)的成本、由于電流的減小也減少了電磁輻射和熱噪聲的干擾。隨著設(shè)備溫度的降低,器件壽命則相應(yīng)延長(半導(dǎo)體器件的工作溫度每提高10度,壽命則縮短一半)
1、降低功耗從MCU選型開始,開始選型的時(shí)候就應(yīng)該考慮選擇低功耗的MCU,比如MSP430一類的為低功耗設(shè)計(jì)的CPU。不建議使用51,一方面是因?yàn)?1速度慢,另外一方面是因?yàn)?1的IO是有上拉電阻的,雖然當(dāng)IO為高電平是上拉電阻不費(fèi)電,但是下拉電流的時(shí)候卻也有不小的功耗產(chǎn)生。還有一點(diǎn)就是51的運(yùn)算速度實(shí)在是太慢了,很多運(yùn)算用51都需要很高的主頻而主頻高了就意味著高的功耗。
2、選擇器件用電電壓,很明顯降低器件的用電電壓能夠明顯的降低器件的耗電比如說ATmega8和ATmega88雖然芯片大致內(nèi)部結(jié)構(gòu)一致但是后者可以工作在1.8V的超低電壓下,而前者就不行。
3、盡量降低器件的工作頻率,大家都知道CMOS電路的工作電流主要來自于開關(guān)轉(zhuǎn)換時(shí)對(duì)后一級(jí)輸入端的電容充放電,如果能夠降低MCU的工作頻率自然耗電也就下來了,要知道當(dāng)AVR工作在32.768Hz時(shí)和工作在20Mhz時(shí)的工作電流差異可不是一般的小啊
4、盡量使用中斷讓處理器進(jìn)入更深的睡眠,眾所周知睡眠模式和掉電模式能夠大大的降低MCU的工作電流,聰明的單片機(jī)設(shè)計(jì)師能夠充分的利用MCU的中斷功能讓MCU周期性的工作和睡眠從而大大的降低MCU的工作電流。
5、盡量關(guān)閉MCU內(nèi)部不用的資源,不用的東西干嗎開著呢,比如ATmega8內(nèi)部的模擬比較器,默認(rèn)是開著的,還有ATmega88內(nèi)部的大多數(shù)資源都可以在不用的時(shí)候用軟件關(guān)閉。
6、盡量使用VMOS做為外部功率擴(kuò)展器件,道理很簡單VMOS驅(qū)動(dòng)的時(shí)候是電壓型器件,驅(qū)動(dòng)是幾乎不產(chǎn)生功耗,要比普通的晶體管省電多了,而且由于VMOS的導(dǎo)通內(nèi)阻低通常只有幾十個(gè)毫歐,在小電流的時(shí)候器件自身發(fā)熱也小,尤其是小電流是效率遠(yuǎn)比 傳統(tǒng)晶體管要高的多的多,這里還是建議使用高速VMOS,因?yàn)楦咚賄MOS用于開關(guān)速度相當(dāng)高的PWM時(shí)效率會(huì)更高。
7、片外IC的電源最好都能由MCU的IO控制,比如說我們常用的24C02,由于它是掉電記憶的,所以我們完全可以在它不工作的時(shí)候?qū)λP(guān)電源,以節(jié)約電流還有比如說我們常用的6116的SRAM我們完全可以用單片機(jī)來控制它的片選端口來控制它的工作與休眠從而節(jié)約電流。大部分存儲(chǔ)器的功耗在片選有效時(shí)(不論OE和WE如何)將比片選無效時(shí)大100倍以上,所以應(yīng)盡可能使用CS來控制芯片,并且在滿足其它要求的情況下盡可能縮短片選脈沖的寬度。
8、使用PWM方式驅(qū)動(dòng)LED器件,從而省略限流電阻,要知道當(dāng)器件選定后它的內(nèi) 阻也就已經(jīng)確定,而當(dāng)電源電壓也確定的時(shí)候,就可以通過占空比來確定器件上的電壓從而節(jié)約了限流電阻同時(shí)也就節(jié)約了限流電阻上面的功耗,如果用戶使用的是電池,我們完全還可以不定期的對(duì)電池電壓進(jìn)行檢測然后改變占空比,從而恒定負(fù)載上面的電壓,達(dá)到電源的最大利用率。
9、慎用信號(hào)的上拉或下拉電阻。信號(hào)需要上下拉的原因很多,但也不是個(gè)個(gè)都要拉。上下拉電阻拉一個(gè)單純的輸入信號(hào),電流也就幾十微安以下,但拉一個(gè)被驅(qū)動(dòng)了的信號(hào),其電流將達(dá)毫安級(jí),現(xiàn)在的系統(tǒng)常常是地址數(shù)據(jù)各32位,可能還有244/245隔離后的總線及其它信號(hào),都上拉的話,幾瓦的功耗就耗在這些電阻上了。
10、CPU和FPGA的閑置I/O口處理。不用的I/O口如果懸空的話,受外界的一點(diǎn)點(diǎn)干擾就可能成為反復(fù)振蕩的輸入信號(hào)了,而MOS器件的功耗基本取決于門電路的翻轉(zhuǎn)次數(shù)。如果把它上拉的話,每個(gè)引腳也會(huì)有微安級(jí)的電流,所以最好的辦法是設(shè)成輸出,當(dāng)然外面不能接其它有驅(qū)動(dòng)的信號(hào)。
11、FGPA的功耗控制。FGPA的功耗與被使用的觸發(fā)器數(shù)量及其翻轉(zhuǎn)次數(shù)成正比,所以同一型號(hào)的FPGA在不同電路不同時(shí)刻的功耗可能相差100倍。盡量減少高速翻轉(zhuǎn)的觸發(fā)器數(shù)量是降低FPGA功耗的根本方法。
12、軟件與硬件配合來降低功耗,總線上幾乎每一個(gè)芯片的訪問、每一個(gè)信號(hào)的翻轉(zhuǎn)差不多都由軟件控制的,如果軟件能減少外存的訪問次數(shù),多使用寄存器變量、多使用內(nèi)部CACHE,及時(shí)響應(yīng)中斷(中斷往往是低電平有效并帶有上拉電阻)及其它針對(duì)具體硬件所采取的特定措施都將對(duì)降低功耗作出很大的貢獻(xiàn)。