《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 電源技術(shù) > 設(shè)計(jì)應(yīng)用 > 低功耗控制電路和程序思路設(shè)計(jì)總結(jié)
低功耗控制電路和程序思路設(shè)計(jì)總結(jié)
摘要: 開發(fā)一個(gè)手持設(shè)備,有一個(gè)設(shè)計(jì)重點(diǎn)問題是必須要重視和解決的。那就是在待機(jī)狀態(tài)下如何做到最省電,,即在待機(jī)狀態(tài)下如何做到盡可能的低功耗,比如用芯唐科技的Cortex-M0內(nèi)核的NUC100做手持電臺(tái)的開發(fā),。
Abstract:
Key words :

  一:首先了解芯片的內(nèi)部功耗

  開發(fā)一個(gè)手持設(shè)備,有一個(gè)設(shè)計(jì)重點(diǎn)問題是必須要重視和解決的,。那就是在待機(jī)狀態(tài)下如何做到最省電,,即在待機(jī)狀態(tài)下如何做到盡可能的低功耗,比如用芯唐科技的Cortex-M0內(nèi)核的NUC100做手持電臺(tái)的開發(fā),,那么

  1,、首先要了解的就是該芯片在深度休眠或睡眠模式下功耗是多少(即該模式下的工作電流時(shí)多大,注一般的芯片都是uA級(jí)別的),。

  通過查看NUC100芯片資料(在每個(gè)芯片手冊(cè)電氣特性或DC電氣特性一節(jié)會(huì)有說明)了解到該芯片的工作最大電流(即最大功耗)和深度休眠模式下的最低功耗 (最低功耗有Ipwd1,,Ipwd2,Ipwd3,,Ipwd4,,表示NUC100內(nèi)部的模塊工作需要外部提供四個(gè)VDD接口,,計(jì)算功耗時(shí)要把他們累加起來,,這里給出了每個(gè)VDD接口的休眠模式下最低功耗值,當(dāng)然如果芯片可以關(guān)閉某個(gè)模塊的對(duì)應(yīng)的VDD,,那就可以降低更多不必要的功耗了)

  

  

  2,、首先要了解的就是該芯片在深度休眠或睡眠模式下功耗是多少(即該模式下的工作電流時(shí)多大,注一般的芯片都是uA級(jí)別的),。

  通過查看NUC100芯片資料(在每個(gè)芯片手冊(cè)電氣特性或DC電氣特性一節(jié)會(huì)有說明)了解到該芯片的工作最大電流(即最大功耗)和深度休眠模式下的最低功耗 (最低功耗有Ipwd1,,Ipwd2,,Ipwd3,Ipwd4,,開始理解是:表示NUC100內(nèi)部的模塊工作需要外部提供四個(gè)VDD接口,,計(jì)算功耗時(shí)要把他們累加起來,這里給出了每個(gè)VDD接口的休眠模式下最低功耗值,,當(dāng)然如果芯片可以關(guān)閉某個(gè)模塊的對(duì)應(yīng)的VDD,,那就可以降低更多不必要的功耗了,其實(shí)不是這樣的,。后來發(fā)現(xiàn)Ipwd1,,Ipwd2,Ipwd3,,Ipwd4分別代表4種情況下測(cè)得的功耗電流,,后來也芯片廠商客服也確認(rèn)過,他們說NUC100在深度休眠的情況下可以做到25uA以下,。)

  二:電路供電系統(tǒng)的功耗分析

  下圖是7R手臺(tái)控制電路(用2個(gè)端口做開關(guān)機(jī)判斷處理,,按鍵開關(guān)機(jī)時(shí)波形圖(開/關(guān)機(jī)波形一樣))

  

  上圖的工作原理是這樣的:

  當(dāng)POWER_KEY按下不,TP1點(diǎn)就持續(xù)高電平(下面示波器波形圖的下面一個(gè)通道的波形圖),,

  由于C1兩端電平不能突變,,所以C1在POWER_KEY按下瞬間其兩端都是高電平(其實(shí)C1起到加速作用),這樣三極管Q1的由于基極出現(xiàn)高電平會(huì)瞬間導(dǎo)通,,然后,,TP2點(diǎn)出現(xiàn)低電平,然后C1會(huì)通過Q1的基--Q1發(fā)射--R1--C1構(gòu)成一個(gè)回路進(jìn)行放電(整個(gè)過程波形如同下圖示波器截圖的上面那個(gè)通道波形:開始出現(xiàn)2ms低電平,,后來按照指數(shù)形式放電,,Q1就從導(dǎo)通,然后慢慢截止,,最后TP2的電平穩(wěn)定為高電平),,注意C2電容的容量相比C1很小,0.1u=100000p,,估計(jì)C2在此電路的作用就是濾除高頻成分的目的,。

  (這里容易糊涂:C1不能突變,,POWER_KEY按下瞬間C1兩端不能突變,可是C2兩端也不能突變,,所以C2兩端都是低電平,,那C1和C2的交點(diǎn)電壓就打架了?,,因?yàn)镃2電容量相比C1的電容量很小,,幾乎對(duì)C1不會(huì)產(chǎn)生影響,當(dāng)然如果C1和C2都是0.1uf,,這POWER_KEY1導(dǎo)通瞬間,,由于C1 C2兩端電壓都不能突變,,則他們的交點(diǎn)電壓應(yīng)該是2.5V)

 ?。娙菹嚓P(guān)理解:[深入理解電容的工作特性總結(jié)] )

  

  下面用一個(gè)端口實(shí)現(xiàn)的開關(guān)機(jī)功能(因?yàn)镮NT0和PB14功能可以做程序中作改變):

  

  程序控制流程稍好加上:

  》》》

  一:首先了解芯片的內(nèi)部功耗

  開發(fā)一個(gè)手持設(shè)備,,有一個(gè)設(shè)計(jì)重點(diǎn)問題是必須要重視和解決的,。那就是在待機(jī)狀態(tài)下如何做到最省電,,即在待機(jī)狀態(tài)下如何做到盡可能的低功耗,,比如用芯唐科技的Cortex-M0內(nèi)核的NUC100做手持電臺(tái)的開發(fā),,那么

  1、首先要了解的就是該芯片在深度休眠或睡眠模式下功耗是多少(即該模式下的工作電流時(shí)多大,,注一般的芯片都是uA級(jí)別的),。

  通過查看NUC100芯片資料(在每個(gè)芯片手冊(cè)電氣特性或DC電氣特性一節(jié)會(huì)有說明)了解到該芯片的工作最大電流(即最大功耗)和深度休眠模式下的最低功耗 (最低功耗有Ipwd1,Ipwd2,,Ipwd3,,Ipwd4,,表示NUC100內(nèi)部的模塊工作需要外部提供四個(gè)VDD接口,,計(jì)算功耗時(shí)要把他們累加起來,,這里給出了每個(gè)VDD接口的休眠模式下最低功耗值,,當(dāng)然如果芯片可以關(guān)閉某個(gè)模塊的對(duì)應(yīng)的VDD,,那就可以降低更多不必要的功耗了)

  

  

  2,、首先要了解的就是該芯片在深度休眠或睡眠模式下功耗是多少(即該模式下的工作電流時(shí)多大,注一般的芯片都是uA級(jí)別的),。

  通過查看NUC100芯片資料(在每個(gè)芯片手冊(cè)電氣特性或DC電氣特性一節(jié)會(huì)有說明)了解到該芯片的工作最大電流(即最大功耗)和深度休眠模式下的最低功耗 (最低功耗有Ipwd1,,Ipwd2,,Ipwd3,,Ipwd4,開始理解是:表示NUC100內(nèi)部的模塊工作需要外部提供四個(gè)VDD接口,,計(jì)算功耗時(shí)要把他們累加起來,這里給出了每個(gè)VDD接口的休眠模式下最低功耗值,,當(dāng)然如果芯片可以關(guān)閉某個(gè)模塊的對(duì)應(yīng)的VDD,那就可以降低更多不必要的功耗了,,其實(shí)不是這樣的,。后來發(fā)現(xiàn)Ipwd1,,Ipwd2,Ipwd3,,Ipwd4分別代表4種情況下測(cè)得的功耗電流,,后來也芯片廠商客服也確認(rèn)過,,他們說NUC100在深度休眠的情況下可以做到25uA以下,。)

  二:電路供電系統(tǒng)的功耗分析

  下圖是7R手臺(tái)控制電路(用2個(gè)端口做開關(guān)機(jī)判斷處理,,按鍵開關(guān)機(jī)時(shí)波形圖(開/關(guān)機(jī)波形一樣))

  

  上圖的工作原理是這樣的:

  當(dāng)POWER_KEY按下不,,TP1點(diǎn)就持續(xù)高電平(下面示波器波形圖的下面一個(gè)通道的波形圖),,

  由于C1兩端電平不能突變,所以C1在POWER_KEY按下瞬間其兩端都是高電平(其實(shí)C1起到加速作用),,這樣三極管Q1的由于基極出現(xiàn)高電平會(huì)瞬間導(dǎo)通,,然后,TP2點(diǎn)出現(xiàn)低電平,,然后C1會(huì)通過Q1的基--Q1發(fā)射--R1--C1構(gòu)成一個(gè)回路進(jìn)行放電(整個(gè)過程波形如同下圖示波器截圖的上面那個(gè)通道波形:開始出現(xiàn)2ms低電平,,后來按照指數(shù)形式放電,Q1就從導(dǎo)通,,然后慢慢截止,,最后TP2的電平穩(wěn)定為高電平),注意C2電容的容量相比C1很小,,0.1u=100000p,,估計(jì)C2在此電路的作用就是濾除高頻成分的目的,。

  (這里容易糊涂:C1不能突變,,POWER_KEY按下瞬間C1兩端不能突變,,可是C2兩端也不能突變,所以C2兩端都是低電平,,那C1和C2的交點(diǎn)電壓就打架了,?,因?yàn)镃2電容量相比C1的電容量很小,,幾乎對(duì)C1不會(huì)產(chǎn)生影響,,當(dāng)然如果C1和C2都是0.1uf,這POWER_KEY1導(dǎo)通瞬間,,由于C1 C2兩端電壓都不能突變,,則他們的交點(diǎn)電壓應(yīng)該是2.5V)

  (電容相關(guān)理解:[深入理解電容的工作特性總結(jié)] )

  

  下面用一個(gè)端口實(shí)現(xiàn)的開關(guān)機(jī)功能(因?yàn)镮NT0和PB14功能可以做程序中作改變):

  

  程序控制流程稍好加上:

  》》》

  當(dāng)在待機(jī)情況下要求極低功耗時(shí)的電路

  低功耗設(shè)計(jì)問題:如何實(shí)現(xiàn)一個(gè)MCU系統(tǒng)在待機(jī)狀態(tài)下0uA的低功耗,?(在待機(jī)模式下不能工作,。如何通過長(zhǎng)按按鍵開啟系統(tǒng),并能夠在釋放按鍵后系統(tǒng)也能正常工作,?)

  分析:

  根據(jù)系統(tǒng)功耗要求,,MCU在待機(jī)模式下不能工作。如何通過長(zhǎng)按按鍵開啟系統(tǒng),,并能夠在釋放按鍵后系統(tǒng)也能正常工作,?然后在開機(jī)后,再次長(zhǎng)按按鍵后又可以進(jìn)入0uA的超低功耗下面待機(jī),。

  解決:

  系統(tǒng)在待機(jī)狀態(tài)(關(guān)機(jī))時(shí),,當(dāng)POWER_KEY1按鍵被長(zhǎng)按。Q2導(dǎo)通,,電池輸入電壓的高電平信號(hào)直接供到MCU芯片電源端,,然后MCU一個(gè)GPIO端口立即輸出一個(gè)高電平使Q2的基極持續(xù)高電平,目的是鎖住Q2持續(xù)工作,,這樣MCU就持續(xù)有電供電,,這樣,按鍵即使被釋放后,,也能保證系統(tǒng)一直處于工作狀態(tài),。

  當(dāng)需要關(guān)閉系統(tǒng)時(shí),還是長(zhǎng)按POWER_KEY1按鍵,,這樣會(huì)通過INT0中斷檢測(cè)到這個(gè)中斷,,然后GPIO不在輸出高電平鎖存Q2的基極,這樣松口當(dāng)POWER_KEY1就可以關(guān)閉系統(tǒng)了,。這樣關(guān)閉系統(tǒng)后,,也沒什么功耗了,,

  注:下圖只是提供一個(gè)思路,這個(gè)電路還有待完善,,GPIO這樣連接是否安全,,比如Q2換用MOS管,各個(gè)電阻的值也要根據(jù)實(shí)際電路選區(qū),,或增加電阻,,電容等器件,這個(gè)系統(tǒng)才能完美工作,!

  

  三:設(shè)計(jì)低功耗常用思路

  如何利用萬(wàn)用表測(cè)試一臺(tái)機(jī)器在穩(wěn)定電壓下的功耗:把FLUK萬(wàn)用表跳到電流檔(注意表筆的插頭搖換到電流檔)的紅表筆接到電源的正極(用黑表筆接正也不會(huì)有危險(xiǎn)),,然后用黑表筆接到機(jī)器的正極,然后把電源的負(fù)極接到機(jī)器的地端,,就可以測(cè)電流了,。

  四:設(shè)計(jì)低功耗常用思路

  降低功耗不光能夠大大的節(jié)約電能還能簡(jiǎn)化電源部分的設(shè)計(jì),,甚至可以用于手持設(shè)備上面使用,,這些都已經(jīng)越來越成為未來產(chǎn) 品的設(shè)計(jì)方向了^_^

  1 降低功耗從MCU選型開始,一開始選型的時(shí)候就應(yīng)該考慮選擇低功耗的MCU比如MSP430一類的為低功耗設(shè)計(jì)的CPU,。 強(qiáng)烈不建議使用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的超低電壓下而前者就不行,綜合考慮下當(dāng)然還是選擇后者,。

  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)部不用的資源,這個(gè)嗎,,地球人都知道的好處,,我說這個(gè)有點(diǎn)像廢話一樣,不用的東西你干嗎開著呢 ,?比如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控制比如說我們常用的24C02,,由于它是掉電記憶的,所以我們完全可以在它不工作的時(shí)候 對(duì)它關(guān)電源,,以節(jié)約電流還有比如說我們常用的6116的SRAM我們完全可以用單片機(jī)來控制它的片選端口來控制它的工作與休 眠從而節(jié)約電流,。

  8 這招也是最毒辣的一招通常我們驅(qū)動(dòng)一些LED器件,完全可以通過PWM來控制從而省略限流電阻,,要知道當(dāng)器件選定后它的內(nèi) 阻也就已經(jīng)確定,,而當(dāng)電源電壓也確定的時(shí)候,就可以通過占空比來確定器件上的電壓從而節(jié)約了限流電阻同時(shí)也就節(jié)約了限 流電阻上面的功耗,,如果用戶使用的是電池,,我們完全還可以不定期的對(duì)電池電壓進(jìn)行檢測(cè)然后改變占空比,從而恒定負(fù)載上 面的電壓,,達(dá)到電源的最大利用率,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。