對(duì)于使用電池供電的產(chǎn)品,特別是有些要求用一節(jié)(顆 )電池工作1年,甚至幾年的 產(chǎn)品。這種產(chǎn)品平均電流要求很低,基本在uA或nA級(jí)別。
我在之前公司做過(guò)很多用電池供電的產(chǎn)品,這些產(chǎn)品有一個(gè)共同的特性: 待機(jī)時(shí) 電流非常低。
下面我就結(jié)合自己工作經(jīng)驗(yàn)以及市面上相關(guān)產(chǎn)品,描述關(guān)于低功耗設(shè)計(jì)注意事項(xiàng),以及實(shí)現(xiàn)低功耗的方法。
一、待機(jī)產(chǎn)品及情況
低功耗產(chǎn)品通常是要求待機(jī)功耗低,有的產(chǎn)品待機(jī)時(shí)0功耗,有的產(chǎn)品待機(jī)時(shí)多個(gè)外設(shè)模塊交替,或者同時(shí)工作。
1.待機(jī)0功耗
待機(jī)時(shí)0功耗的產(chǎn)品,只要保證在工作時(shí)的功耗即可。如果工作的時(shí)間也很短,那么這種產(chǎn)品 在低功耗方面需要投入的研發(fā)其實(shí)相對(duì)不多。
比如電視機(jī) (按鍵 )遙控板:
這種產(chǎn)品待機(jī)時(shí)0功耗,通過(guò)按鍵喚醒,喚醒之后工作幾毫秒(不同型號(hào)時(shí)間有差異)又進(jìn)入待機(jī)狀態(tài)。
實(shí)現(xiàn)原理:
通過(guò)按鍵上電,啟動(dòng)MCU,執(zhí)行工作,執(zhí)行完任務(wù),通過(guò)MCU控制總電源斷電。
也就是:通過(guò)外部開(kāi)啟電源,通過(guò)內(nèi)部控制斷電的機(jī)制實(shí)現(xiàn)。
2.間歇待機(jī)
有些產(chǎn)品是間歇性待機(jī),比如:工作1ms,待機(jī)499ms。
比如IC卡設(shè)備:
IC卡設(shè)備如果一直處于尋卡工作狀態(tài),電流其實(shí)相對(duì)較大,而很多時(shí)候都沒(méi)有IC來(lái)感應(yīng)。
實(shí)現(xiàn)原理:
這種產(chǎn)品,可以間隔0.25s,或者0.5s來(lái)感應(yīng)(尋卡)一次,同時(shí)不會(huì)給人帶來(lái)“卡頓”的感覺(jué)。(尋卡工作的時(shí)間其實(shí)很短)
(圖片來(lái)自網(wǎng)絡(luò))
同理,類(lèi)似的產(chǎn)品還有很多,比如無(wú)線遙控天然氣、水表等。
這種做法目的是為了讓產(chǎn)品功耗更低,但人看起來(lái)產(chǎn)品一直在工作。
3.長(zhǎng)期待機(jī)
有些產(chǎn)品的MCU是通過(guò)外圍設(shè)備喚醒,比如通過(guò)觸摸按鍵喚醒產(chǎn)品。
這種產(chǎn)品相對(duì)上面兩種難度更大,要同時(shí)保證MCU內(nèi)部資源,以及外部資源在工作和待機(jī)時(shí)功耗都要盡量低。
二、實(shí)現(xiàn)低功耗的方法
結(jié)合上面產(chǎn)品的描述可以總結(jié)幾點(diǎn)實(shí)現(xiàn)低功耗的方法。
1.控制電源開(kāi)關(guān)
通過(guò)控制系統(tǒng)總電源、(高功耗)外圍模塊電源的開(kāi)關(guān),特別是使用頻率低、功耗大的外圍模塊,在需要時(shí)才開(kāi)啟。
2.控制MCU內(nèi)部外設(shè)
有些MCU產(chǎn)品的外設(shè)在上電時(shí)默認(rèn) 是開(kāi)啟的(比如STM8S ),不用的外設(shè)一定要關(guān)閉,在需要時(shí)才開(kāi)啟。
3.控制時(shí)鐘頻率
這里說(shuō)的控制時(shí)鐘頻率不單純是降頻, 是根據(jù)實(shí)際工作情況(工作模式、時(shí)長(zhǎng)等)調(diào)整頻率。
有些產(chǎn)品它在執(zhí)行任務(wù)A時(shí),要求快速處理(不如跑一段算法),則需要調(diào)整到更高的頻率;
而在執(zhí)行 任務(wù)B時(shí),處理簡(jiǎn)單事情(比如控制LED亮滅),則需要將時(shí)鐘調(diào)整到很低狀態(tài)。
同時(shí),還需要結(jié)合工作時(shí)長(zhǎng),比如上面任務(wù)A,如果時(shí)間很長(zhǎng),這個(gè)頻率也需要綜合考慮。
4.控制IO狀態(tài)
現(xiàn)在MCU基本都有多種狀態(tài):
模擬輸入
浮空輸入
下拉輸入
上拉輸入
開(kāi)漏輸出
推挽輸出
復(fù)用開(kāi)漏輸出
復(fù)用推挽輸出
在低功耗狀態(tài)、工作過(guò)程都需要設(shè)置成合理狀態(tài)。比如通常在待機(jī)時(shí),將不用的引腳設(shè)置成模擬輸入。
5.檢查硬件
檢查是否存在漏電流,比如不合格電容、電阻等器件。
還有虛焊或板卡上存在殘留焊錫等情況,都會(huì)導(dǎo)致功耗增加。