超低功耗MCU如何降低功耗
來源:宇芯有限公司 日期:2020-11-11 10:50:08
低功耗是MCU的一項(xiàng)非常重要的指標(biāo),比如某些可穿戴的設(shè)備,其攜帶的電量有限,如果整個(gè)電路消耗的電量特別大就會(huì)經(jīng)常出現(xiàn)電量不足的情況。
平時(shí)我們?cè)谧霎a(chǎn)品的時(shí)候,基本的功能實(shí)現(xiàn)很簡(jiǎn)單,但只要涉及到關(guān)于低功耗的問題就比較棘手了,比如某些可以低到微安級(jí)的MCU微控制器,而自己設(shè)計(jì)的低功耗怎么測(cè)都是毫安級(jí)的,電流竟然能夠高出標(biāo)準(zhǔn)幾百到上千倍,遇到這種情況干萬不要怕,只要認(rèn)真你就贏了。接著仔細(xì)分析一下這其中的原因。
(1)掐斷外設(shè)命脈,關(guān)閉外設(shè)時(shí)鐘。
先說最直觀的,也是工程師都比較注意的方面,就是關(guān)閉
MCU微控制器的外設(shè)時(shí)鐘,對(duì)于現(xiàn)在市面上出現(xiàn)的大多數(shù)的MCU微控制器,其外設(shè)模塊都對(duì)應(yīng)著一個(gè)時(shí)鐘開關(guān)。只需要打開這個(gè)外設(shè)的時(shí)鐘,就可以正常的使用這個(gè)外設(shè)了,當(dāng)然此外設(shè)也就會(huì)產(chǎn)生相應(yīng)的功耗;如果想要讓這個(gè)外設(shè)不產(chǎn)生功耗的話,只需要關(guān)閉它的時(shí)鐘就可以了。
( 2)讓工作節(jié)奏慢下來,時(shí)鐘不要倍頻。除了外設(shè)模塊功率消耗之外,還有一個(gè)功耗大戶需要注意一下,這就是PLL和 FLL模塊。PLL和FLL主要是用來對(duì)原始的時(shí)鐘信號(hào)進(jìn)行倍頻操作,從而提高系統(tǒng)的整體時(shí)鐘,其功耗也會(huì)被提上去。所以在進(jìn)入低功耗之前,需要切換時(shí)種模式,旁路掉PLL和 FLL模塊,從而盡可能的降低MCU的功耗,等到MCU喚醒之后再把時(shí)鐘切換回去。
( 3)圍堵涓涓細(xì)流,注意IO口的電平狀態(tài)。如果認(rèn)為只要關(guān)閉外設(shè)時(shí)鐘就能夠保證外設(shè)不再耗電,那么你就太天真了。如果 IO口沒有做好處理的話,它就會(huì)在暗地里偷走功耗,而你卻渾然不知。具體原因是這樣的,一般的IO的內(nèi)部或者外部都會(huì)有上下拉電阻,假如某個(gè)IO口有個(gè)10K 的上拉電阻,把引腳拉到3.3 V,然而當(dāng)MCU進(jìn)入低功耗模式的時(shí)候,此IO口被設(shè)置成輸出低電平,根據(jù)歐姆定律,此引腳就會(huì)消耗3.3 V/10 K = 0.33 mA的電流,假如有四、五個(gè)這樣的IO口,那么幾個(gè)mA就貼進(jìn)去了。所以在進(jìn)入低功耗之前,請(qǐng)逐個(gè)檢查IO口的狀態(tài)。
如果此IO口帶下拉,請(qǐng)?jiān)O(shè)置為低電平輸出或者高阻態(tài)輸入。不要把上好的電流浪費(fèi)在產(chǎn)生熱量的功能上。
(4)睦鄰友好的合作,要注意1O 與外設(shè)IC的統(tǒng)籌。
IO口的上下拉電阻消耗電流這一因素相對(duì)比較明顯,下邊咱來說一個(gè)不明顯的因素:IO口與外部IC相連時(shí)的電流消耗。假如某個(gè)IO口自帶上拉,而此與IO相連的IC引腳偏偏是自帶下拉的,那么無論這個(gè)引腳處于什么樣的電平輸出,都不可避免的產(chǎn)生一定的電流消耗。所以凡是遇見這-類的情況,首先需要閱讀外設(shè)IC的手冊(cè),確定好此引腳的的狀態(tài),做到心中有數(shù);然后在控制
單片機(jī)MCU睡眠之前,設(shè)置好MCU的IO口的上下拉模式及輸入輸出狀態(tài),要保證一絲兒電流都不要被它消耗掉。
( 5)斷開調(diào)試器連接,不要被假象所迷惑。還有一類比較奇特,檢測(cè)出來的電流消耗很大,可實(shí)際結(jié)果是自己杞人憂天,原因是因?yàn)樵跍y(cè)試功耗的時(shí)候MCU還連接著調(diào)試器。這時(shí)候大部分電流就會(huì)被調(diào)試器給擄走,平白無故的讓工程師產(chǎn)生極度郁悶的心情。所以在測(cè)低功耗的時(shí)候,一定不要連接調(diào)試器,更不能邊調(diào)試邊測(cè)電流。
MCU的低功耗設(shè)計(jì)是一個(gè)細(xì)致活,要養(yǎng)成良好的習(xí)慣,做到每添加一個(gè)功能都要重新驗(yàn)證一下低功耗是否符合要求,這樣就可以隨時(shí)隨地減少損耗功率的因素。如果把所有功能都設(shè)計(jì)好了才去考慮低功耗的問題,一個(gè)不小心就可能要更改程序的架構(gòu),即便如此也不一定能把功耗給徹底降下去。
靈動(dòng)低功耗MCU產(chǎn)品型號(hào)
Part Number |
Speed (MHz) |
Flsah |
RAM |
I/O |
Advanced TM(16bit) |
GPTM (16bit) |
WDG |
UART |
I²C |
SPI |
ADC |
Package |
MM32L373NT |
96 |
128 |
20 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
QFP32 |
MM32L373PT |
96 |
128 |
20 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
LQFP32 |
MM32L373PS |
96 |
128 |
20 |
51 |
1 |
3 |
2 |
3 |
2 |
2 |
16×12bit |
LQFP64 |
MM32L372PF |
96 |
128 |
20 |
36 |
1 |
3 |
2 |
3 |
2 |
2 |
10×12bit |
LQFP48 |
MM32L372NT |
96 |
128 |
20 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
QFP32 |
MM32L373PF |
96 |
128 |
20 |
36 |
1 |
3 |
2 |
3 |
2 |
2 |
10×12bit |
LQFP48 |
MM32L372PT |
96 |
128 |
20 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
LQFP32 |
MM32L361NT |
96 |
64 |
20 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
QFP32 |
MM32L361PT |
96 |
64 |
20 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
LQFP32 |
MM32L361PF |
96 |
64 |
20 |
36 |
1 |
3 |
2 |
3 |
2 |
2 |
10×12bit |
LQFP48 |
MM32L361PS |
96 |
64 |
20 |
51 |
1 |
3 |
2 |
3 |
2 |
2 |
16×12bit |
LQFP64 |
MM32L360TW |
96 |
64 |
20 |
16 |
1 |
3 |
2 |
2 |
1 |
1 |
-- |
TSSOP20 |
MM32L360NT |
96 |
64 |
20 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
-- |
QFP32 |
MM32L351NT |
96 |
32 |
10 |
-- |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
QFP32 |
MM32L352NT |
96 |
32 |
10 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
QFP32 |
MM32L353NT |
96 |
32 |
10 |
22 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
QFP32 |
MM32L361TW |
96 |
64 |
20 |
16 |
1 |
3 |
2 |
2 |
1 |
1 |
10×12bit |
TSSOP20 |
MM32L362PS |
96 |
64 |
20 |
51 |
1 |
3 |
2 |
3 |
2 |
2 |
16×12bit |
LQFP64 |
關(guān)鍵詞:MCU
宇芯有限公司自成立以來,我們專注于代理國(guó)內(nèi)外各大知名品牌的半導(dǎo)體元器件,代理品牌有NETSOL、JSC、everspin代理、來?xiàng)頛yontek、ISSI、CYPRESS,VTI等多個(gè)品牌總代理資質(zhì),主要產(chǎn)品線為sram、mram、psram等其他存儲(chǔ)器芯片,致力于為客戶提供具有競(jìng)爭(zhēng)優(yōu)勢(shì)的產(chǎn)品,是一家專業(yè)提供存儲(chǔ)方案解決商。