威海職業(yè)學(xué)院 孔憲青
產(chǎn)品設(shè)計(jì)的重要一環(huán)就是單片機(jī)的低功耗模式,是可穿戴設(shè)備、醫(yī)療設(shè)備、手持設(shè)備等電池供電的產(chǎn)品中的重要性能指標(biāo)?,F(xiàn)階段,很多廠商提供了多樣的MCU低功耗處理方法。本文以低功耗為切入,闡述對(duì)MCU的選擇。
低功耗模式是指設(shè)備正常工作的前提下,通過(guò)關(guān)閉外設(shè)和內(nèi)核部分,使MCU在總體電量不變的條件下能更長(zhǎng)時(shí)間的工作。1996年出現(xiàn)的16位MSP430系列通過(guò)關(guān)閉CPU、倍頻環(huán)、數(shù)字時(shí)鐘發(fā)生器、振蕩器而組合出五種低功耗模式,LPM4模式下供電電流可以低到0.1uA。但隨著產(chǎn)品性能的日益要求,32位MCU出現(xiàn)并進(jìn)入低功耗領(lǐng)域,出現(xiàn)了ARM架構(gòu)的Cortex-M0的低功耗內(nèi)核。圖1是MSP30G2553和STM32F011的部分時(shí)鐘樹(shù)的對(duì)比。
圖1 MSP430G2553和STM32L011的部分時(shí)鐘樹(shù)
可以看出,后者對(duì)外設(shè)的頻率控制更精細(xì),既能獲得32位性能又能獲得更好的功耗控制。其Cortex-M0+系列的外部高速時(shí)鐘晶振預(yù)分頻為AHB,然后再分解為APBx,對(duì)于外設(shè)的控制比MSP430系列有更多選擇。時(shí)鐘是啟動(dòng)外設(shè)和給電的源頭,因此通過(guò)APBx有更多不同分頻以供不同外設(shè)而達(dá)到最優(yōu)的功耗。而MSP430G2553只有MCLK分解的SMCLK和ACLK可用,也就是達(dá)不到精準(zhǔn)控制外設(shè)時(shí)鐘的目的,也不能精準(zhǔn)控制外設(shè)功耗??傊?,低功耗模式就是精準(zhǔn)的控制時(shí)鐘及其分頻,以達(dá)到降低外設(shè)功耗的目的。
現(xiàn)階段,低功耗 MCU百花齊放。TI、ST、NXP、Atmel等公司都提供了大量的可供選擇的芯片。從低功耗方面,通過(guò)幾種類型的芯片進(jìn)行對(duì)比,部分參數(shù)見(jiàn)表1。
對(duì)比發(fā)現(xiàn),ARM架構(gòu)三內(nèi)核性能的排序?yàn)镃M3>CM0+>CM0,運(yùn)行功耗的排序?yàn)镃M3>CM0>CM0+,即CM0+內(nèi)核的能效高于CM0,運(yùn)算性能僅次于CM3,但CM0+比CM3價(jià)格低,中斷響應(yīng)卻更快,故CM0+更適合應(yīng)用于低成本低功耗的產(chǎn)品。那些對(duì)功耗要求苛刻、運(yùn)算處理復(fù)雜、且需控制成本的設(shè)備選擇Cortex-M0+內(nèi)核的MCU最為合適。這樣的主流芯片有ST公司的L0系列,NXP公司的LPC800系列,Atmel公司的SAML2系列等。其中STM32L0系列有三條主要的產(chǎn)品線,差異在于不同的外設(shè)模塊,如USB控制器、LCD控制器和DAC。恰當(dāng)?shù)剡x用有助于減少外部芯片的數(shù)量,降低系統(tǒng)成本和功耗。因此,片上集成資源的數(shù)量、種類、性能和功耗,也是決定MCU選型的重要參考因素。
除了選擇合適的低功耗MCU之外,還要考慮影響功耗的其他方面:(1)盡量選擇32位高線寬MCU,高密度指令可能是低位寬的幾條指令之和,可有效降低指令能耗;(2)隨時(shí)關(guān)頻及時(shí)掐死外設(shè),這是低功耗實(shí)現(xiàn)主要方式;(3)時(shí)鐘不要倍頻,盡管高頻運(yùn)行可降低任務(wù)執(zhí)行時(shí)間,但頻率越高能耗越高;(4)針對(duì)特定的任務(wù)合理搭配時(shí)鐘頻率,迅速完成以爭(zhēng)取更多的休眠時(shí)間;(5)恰當(dāng)?shù)男菝吣J胶托菝邥r(shí)間;(6)中斷的喚醒和低功耗的回歸都應(yīng)迅速,休眠保證了低功耗,但也務(wù)求迅速喚醒,以最低功耗完成工作后,再以最快速度回歸休眠狀態(tài);(7)優(yōu)化任務(wù)的時(shí)間片,將平均功耗降到最低,使用事件觸發(fā)狀態(tài)機(jī)模式編程;(8)內(nèi)外部上下拉IO口可能造成涓涓細(xì)流,仔細(xì)檢查IO口高阻態(tài)以避免能耗浪費(fèi);(9)如果不能避免IO設(shè)置為上下拉,就要避免IO與外設(shè)形成持續(xù)的電流回環(huán),最差也在進(jìn)入MCU睡眠模式之前,根據(jù)外設(shè)情況設(shè)置最小電流回路。
表1 典型低功耗MCU的指標(biāo)對(duì)比
總之,考慮以上的注意事項(xiàng)并選擇具有Cortex-M0+內(nèi)核的MCU是現(xiàn)階段低功耗的保證。低功耗MCU也將在手持設(shè)備、可穿戴設(shè)備和醫(yī)療設(shè)備的應(yīng)用中具有廣闊前景。
[1]佚名.智能硬件開(kāi)發(fā)如何選擇低功耗MCU[J].電子產(chǎn)品世界.