低功耗設(shè)計(jì)并不僅僅是為了省電,,更多的好處在于降低了電源模塊及散熱系統(tǒng)的成本、由于電流的減小也減少了電磁輻射和熱噪聲的干擾,。隨著設(shè)備溫度的降低,,器件壽命則相應(yīng)延長(zhǎ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,、選擇器件用電電壓,很明顯降低器件的用電電壓能夠明顯的降低器件的耗電比如說(shuō)ATmega8和ATmega88雖然芯片大致內(nèi)部結(jié)構(gòu)一致但是后者可以工作在1.8V的超低電壓下,,而前者就不行,。
3、盡量降低器件的工作頻率,,大家都知道CMOS電路的工作電流主要來(lái)自于開關(guān)轉(zhuǎn)換時(shí)對(duì)后一級(jí)輸入端的電容充放電,,如果能夠降低MCU的工作頻率自然耗電也就下來(lái)了,要知道當(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ò)展器件,道理很簡(jiǎn)單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控制,,比如說(shuō)我們常用的24C02,,由于它是掉電記憶的,,所以我們完全可以在它不工作的時(shí)候?qū)λP(guān)電源,以節(jié)約電流還有比如說(shuō)我們常用的6116的SRAM我們完全可以用單片機(jī)來(lái)控制它的片選端口來(lái)控制它的工作與休眠從而節(jié)約電流,。大部分存儲(chǔ)器的功耗在片選有效時(shí)(不論OE和WE如何)將比片選無(wú)效時(shí)大100倍以上,,所以應(yīng)盡可能使用CS來(lái)控制芯片,并且在滿足其它要求的情況下盡可能縮短片選脈沖的寬度,。
8,、使用PWM方式驅(qū)動(dòng)LED器件,,從而省略限流電阻,,要知道當(dāng)器件選定后它的內(nèi) 阻也就已經(jīng)確定,而當(dāng)電源電壓也確定的時(shí)候,,就可以通過(guò)占空比來(lái)確定器件上的電壓從而節(jié)約了限流電阻同時(shí)也就節(jié)約了限流電阻上面的功耗,,如果用戶使用的是電池,我們完全還可以不定期的對(duì)電池電壓進(jìn)行檢測(cè)然后改變占空比,,從而恒定負(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,、軟件與硬件配合來(lái)降低功耗,總線上幾乎每一個(gè)芯片的訪問(wèn),、每一個(gè)信號(hào)的翻轉(zhuǎn)差不多都由軟件控制的,,如果軟件能減少外存的訪問(wèn)次數(shù),多使用寄存器變量,、多使用內(nèi)部CACHE,,及時(shí)響應(yīng)中斷(中斷往往是低電平有效并帶有上拉電阻)及其它針對(duì)具體硬件所采取的特定措施都將對(duì)降低功耗作出很大的貢獻(xiàn)。