《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 單片機低功耗技術及應用

單片機低功耗技術及應用

2008-10-28
作者:李月香1, 袁 濤2, 木合塔爾

  摘? 要: 介紹單片機的低功耗" title="低功耗">低功耗設計技術特點及單片機應用" title="單片機應用">單片機應用系統中的低功耗設計" title="低功耗設計">低功耗設計要注意的幾個問題,并列舉了充分利用片內資源實現低功耗及C語言源程序。

  關鍵詞: 單片機? 低功耗? 設計

?

  隨著集成電路技術和工藝的飛速發展,真正單片化的單片機已經成為主流產品。它的絕大部分資源都在單片機芯片內部;過去需要用外部擴展器件才能實現的功能,如ROM、RAM、A/D、D/A、數字量I/O、顯示驅動等功能,現在在單片機內部就可以完成。單片機的真正單片化,省去了大量的硬件開發調試工作,大大地提高了工作效率;系統先天的可靠性、抗干擾能力得到了顯著的改善。經實驗測試,實現同樣功能的系統,采用單片方式比總線擴展方式具有更多的優點。系統不僅功能強、性能可靠、成本降低,而且進一步微型化和便攜化。因此,使用電池作為系統的電源也越來越普遍。系統的最小電源消耗和最大的電池壽命就成為主要的技術要求。例如1999年的多國儀器儀表展覽會上,不止一家國外公司展出了使用電池的工業流量計,5~10年都不必更換電池和進行維護。所以低功耗單片機的應用有著非常廣闊的天地。低功耗單片機應用符合現代電子終端產品的要求:便攜、節能、可靠等。目前國際上先進的單片機生產廠商,如日本NEC、富士通、愛普森和美國TI等公司都采用了低功耗設計。筆者在一些應用中使用了日本NEC公司的78K0和78K0S系列的單片機,其休眠狀態下的功耗電流可達到0.05~0.01μA。

1 單片機的低功耗設計技術

1.1 高集成度的完全單片化設計

  將很多外圍硬件集成到了CPU芯片中,增大硬件冗余。內部以低功耗、低電壓的原則設計,這給單片機的低功耗設計提供了很強的支持。

1.2 內部電路可選擇性工作

  通過特殊功能寄存器選擇使用不同的功能電路,即依靠軟件選擇其中不同的硬件;對于不使用的功能使其停止工作,以減少無效功耗。

1.3 寬電源電壓范圍

  先進的單片機芯片工藝特點決定了單片機在很寬的電源電壓范圍內都能正常工作。例如,NEC公司的78K0和78K0S系列的單片機,可以在1.8V~5.5V電源電壓范圍內正常工作。單片機供電電壓范圍的放寬,可以進一步拓寬單片機的應用領域,尤其是便攜式或掌上型儀器或裝置,可以放心地使用電池作為電源,而不必關心電池放電過程電壓曲線是否平穩、是否會影響單片機正常工作,更不必因電池供電而專門增加穩壓電路,從而可減少大約1/3的功率消耗。

1.4 具有高速和低速兩套時鐘

  系統運行頻率越高,電源功耗就會相應增大。為更好地降低功耗,內部集成了兩套獨立的時鐘系統,高速的主時鐘和32.768kHz的副時鐘。也可在滿足功能需要的情況下按一定比例降低CPU主時鐘頻率" title="時鐘頻率">時鐘頻率,以降低電源功耗。在不需要高速運行的情況下,可選用副時鐘低速運行,進一步降低功耗。通過軟件對特殊功能寄存器賦值可改變CPU的時鐘頻率,或進行主時鐘和副時鐘切換。

1.5 在線改變CPU的工作頻率

  可根據CPU處理任務的不同,在外部振蕩器不變的情況下,通過程序改變處理器時鐘控制寄存器PCC的值,在線改變CPU的頻率。CPU在幾種不同頻率下工作的電源功耗比較如圖1所示。

?

?

1.6 后備功能

  后備功能是為了進一步降低系統功耗。CPU用主時鐘時有HALT(待機)模式和STOP(休眠)模式,用副系統時鐘" title="系統時鐘">系統時鐘時有副時鐘運行模式和HALT模式。如表1所示。

?

?

1.7 內部鐘表定時器

  NEC單片機內部提供了時鐘定時器,每隔0.5s產生一次中斷。在系統處于休眠狀態時,仍可定時被喚醒。對于單片機只須間歇工作、但又需要實時計時功能的應用場合,提供了非常有效的節能方法。CPU在不工作時可進入STOP模式或HALT模式,進入低功耗的后備功能狀態。當時鐘中斷到來時,CPU回到正常工作狀態,進入時鐘中斷處理程序做時鐘更新處理,然后再進入后備功能狀態。

2 單片機應用系統中的低功耗設計要注意的問題

  (1)系統中單片機以外的其它電路器件盡可能選用靜態功耗低的器件,如選用CMOS電路芯片。

  (2)外部設備的選擇也要盡可能支持低功耗設計。

  (3)設計外部中斷喚醒電路,使單片機在等待時可進入休眠模式或待機模式,需要時由外部中斷信號喚醒。

  (4)設計外部器件的電源控制電路,使外部器件或設備在不工作時關斷供電,減少無效功耗。

  (5)設計充分利用系統低功耗特點的軟件。

3 在線改變CPU的時鐘頻率以降低功耗的C語言程序舉例

  CPU在不需要高速運行時,可設置在較低的時鐘頻率下工作,在運行過程中可根據需要在線改變CPU的時鐘頻率。下面是一個通過按鍵產生外部中斷信號改變NEC單片機μPD780058的CPU時鐘頻率的程序,它使CPU在主、副時鐘間切換運行。通過I/O口P6的位0引腳連接1個LED小燈,每按下一次按鍵就使CPU的時鐘頻率改變。在主時鐘和副時鐘頻率下工作時,用同樣的軟件延時程序控制小燈點亮的時間,以此觀察CPU的運行速度。

  程序清單:

//**************宏定義**************

#define??? PCCMODEM?  0x00????????? //CPU時鐘控制寄存器PCC

?????????????????????????????????????//定義為選主系統時鐘

#define??? PCCMODES??? 0xf0 ??????? ?//CPU時鐘控制寄存器PCC

  ??????????????????????????????? ?//定義為選副系統時鐘

#define??? PORT60????? 1???????????? //P6口位0賦初值

#define?  PORTM60?????0???????????? //P6口位0設為輸出

#define ?? INTM0M??????0x00?????????? //定義外部中斷INTP1的

????????????????????????????????????? //中斷觸發沿為下降沿

//*****單片機內部功能使用的定義*****

#pragma??? sfr??????????????????????? //使用特殊功能寄存器

#pragma????HALT?????????????????????? //使用HALT功能

#pragma????interrupt INTP1 inter RB1? //使用中斷功能

#pragma????DI???????????????????????? //使用關中斷功能

#pragma????EI???????????????????????? //使用開中斷功能

//*************變量定義*************

unsigned?? int???? b;??????????????? //定義軟件延時計數變量

char???????msflag;??????????????????? //定義主、副時鐘切換標志

//**************主函數**************

void main()

{

PCC=PCCMODEM;?????????????? ????????? //CPU用主系統時鐘

P6.0=PORTM60;??????????????????????? ?//P6口的位0賦初值

PM6.0=PORTM60;????????????????????????//P6口的位0為輸出

INTM0= INTM0M;??????????????????????? //INTP1下降沿觸發

PMK1=0;???????????????????????????????//清除INTP1中斷屏蔽

msflag=0;?????????????????????????????//選用主副時鐘的標志

EI();?????????????????????????????????//開中斷

while(1)

{

????????????? if (msflag==0)??????????? //時鐘切換標志為0時

???????????????????? msflag=1;???????? //標志變為1

????????????? else msflag=0; ????????? //否則標志變為0

?????? ?????? P6.0=0;????????????????? //點亮LED燈

?????? ? ???? b = 0;?????? ??????????? //軟件延時的計數值賦初值

????????????? while(b<=10000)

????????????? {

???????????????????? b++;??? ????????? //軟件延時(注意系統時鐘為

??????????????????????????????????????? //主時鐘與副時鐘延時

??????????????????????????????????????? //時間的長短是不同的)

????????????? }????

????????????? P6.0=1;??????????????????//熄滅LED燈

????????????? HALT();??????????????????//進入HALT狀態

}

}

//************中斷服務函數************

void inter(void)

{

????????????? if (msflag ==0)???????????? //若時鐘切換標志為0

???????????????????? PCC=PCCMODES;????  //CPU使用副時鐘

????????????? else????????????????????????//否則

???????????????????? PCC=PCCMODEM;???   //CPU使用主時鐘

}

  低功耗單片機的應用使電子產品、控制系統更符合當今時代的要求,達到便攜、低功耗和高可靠性。加之用高級語言(如C語言)對單片機進行開發的工具日臻完善。更為快速高效的開發應用提供了良好的條件和環境。低功耗的節能單片機應用系統將會帶來很好的社會效益和經濟效益。

?

參考文獻

1 何為民. 低功耗單片微機系統設計.北京:北京航空航天大學出版社,1993年6月

2 吳玉平譯.μPD780024,780034,780024Y,780034Y子系列8位單片微控制器用戶手冊.北京:電子工業出版社,1994年4月

3 日本NEC公司.CC78K0 C Compiler V.3.10 or later?Language User's Manual,1999

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久亚洲精品一区二区| 国产精品乱码人人做人人爱| 中国av一区| 亚洲欧洲在线一区| 久久精品国产清自在天天线| 亚洲欧美日韩国产成人| 在线视频精品一| 在线亚洲一区观看| 这里是久久伊人| 夜夜嗨av色综合久久久综合网| 亚洲欧洲一区二区三区在线观看| 亚洲高清视频在线观看| 在线看欧美视频| 最新日韩中文字幕| 91久久久在线| 亚洲免费观看高清完整版在线观看| 91久久久亚洲精品| 亚洲精品一区二区三区樱花| 亚洲伦理在线| 99视频有精品| 中文一区字幕| 亚洲欧美日韩一区二区在线 | 一本色道久久综合狠狠躁篇的优点| 亚洲精品欧洲| 亚洲手机在线| 亚洲欧美日韩一区二区三区在线观看 | 亚洲第一页自拍| 亚洲国产欧美日韩精品| 91久久精品一区二区别| 99这里只有精品| 亚洲一区二区三区免费观看 | 亚洲欧美www| 欧美在线一区二区| 亚洲精品久久久久久一区二区| 日韩视频二区| 亚洲综合色网站| 欧美中文日韩| 欧美成人r级一区二区三区| 欧美日韩第一页| 国产精品视频yy9299一区| 国产日韩欧美成人| 欲香欲色天天天综合和网| 亚洲国产二区| 亚洲视频免费看| 欧美在线免费观看视频| 亚洲激情在线视频| 亚洲香蕉伊综合在人在线视看| 性欧美xxxx大乳国产app| 久久理论片午夜琪琪电影网| 欧美国产亚洲精品久久久8v| 国产精品久久97| 一区二区三区在线观看国产| 日韩亚洲一区二区| 亚洲欧美日韩高清| 亚洲乱码精品一二三四区日韩在线| 亚洲一二区在线| 久久久夜色精品亚洲| 欧美日韩高清区| 国产日韩精品综合网站| 91久久极品少妇xxxxⅹ软件| 这里只有精品在线播放| 亚洲成在人线av| 亚洲一区免费| 免费在线观看日韩欧美| 国产精品久久九九| 亚洲二区免费| 性欧美videos另类喷潮| 日韩午夜在线观看视频| 久久九九精品| 国产精品v日韩精品| 亚洲高清激情| 亚洲欧美日韩视频二区| 日韩一区二区免费看| 久久久久久尹人网香蕉| 欧美性久久久| 亚洲国产精品va在线看黑人动漫| 亚洲欧美日韩另类精品一区二区三区| 亚洲人久久久| 久久精品在线播放| 欧美午夜电影完整版| 18成人免费观看视频| 亚洲欧美日韩国产精品| 日韩一级成人av| 麻豆国产va免费精品高清在线| 国产精品区一区二区三区| 亚洲青涩在线| 亚洲国产女人aaa毛片在线| 欧美在线看片| 国产精品国产三级欧美二区 | 欧美精品久久久久久| 黄色一区二区三区四区| 亚洲尤物视频在线| 中国亚洲黄色| 欧美精品成人| 亚洲高清视频一区二区| 久久精品电影| 久久精品人人做人人综合| 国产精品视频| 一区二区三区四区蜜桃| 日韩一区二区电影网| 美女网站在线免费欧美精品| 国产欧美日韩亚州综合| 在线视频亚洲| 一本久久综合亚洲鲁鲁| 欧美国产欧美亚洲国产日韩mv天天看完整 | 亚洲国产天堂久久综合网| 亚洲大片在线| 久久九九久精品国产免费直播| 国产精品视频xxx| 亚洲一区二区高清| 亚洲一区二区高清| 欧美视频在线免费| 日韩亚洲综合在线| 亚洲神马久久| 欧美视频国产精品| 99re成人精品视频| av成人手机在线| 欧美日韩综合另类| 99成人免费视频| 一本一本久久a久久精品牛牛影视| 欧美精品激情blacked18| 最新国产成人av网站网址麻豆 | 欧美精品一区二区三区蜜桃| 亚洲国产一区二区三区a毛片| 亚洲人成在线观看| 欧美激情综合五月色丁香| 亚洲日本久久| 亚洲香蕉网站| 国产精品亚洲综合| 欧美亚洲视频一区二区| 久久精品国产一区二区三区| 国产亚洲一区二区在线观看 | 91久久精品国产| 欧美黄色影院| 9l视频自拍蝌蚪9l视频成人| 亚洲一区二区三区777| 国产精品美女久久久久久2018| 亚洲免费视频网站| 久久久国产视频91| 在线欧美影院| 亚洲视频免费看| 国产精品乱码妇女bbbb| 欧美亚洲免费| 欧美高清不卡| 一区二区三区四区精品| 久久不射2019中文字幕| 国产视频精品网| 亚洲激情第一页| 欧美日韩成人一区二区| 亚洲天堂网站在线观看视频| 欧美一区二区啪啪| 在线国产精品播放| 一区二区欧美在线| 国产美女扒开尿口久久久| 亚洲国产精品激情在线观看| 欧美精品七区| 亚洲综合色丁香婷婷六月图片| 久久免费偷拍视频| 日韩视频一区二区| 欧美影院成年免费版| 亚洲第一毛片| 亚洲在线视频网站| 精品av久久707| 亚洲性图久久| 国产自产2019最新不卡| 亚洲麻豆视频| 国产午夜精品久久久久久久| 亚洲人精品午夜在线观看| 国产精品久久91| 亚洲国产免费看| 国产精品你懂的| 亚洲激情视频在线| 国产精品欧美日韩| 亚洲欧洲精品一区二区三区不卡| 国产精品久久77777| 91久久在线播放| 国产精品久久国产精品99gif| 亚洲成人在线免费| 国产精品日韩在线观看| 最新精品在线| 国产精品入口夜色视频大尺度| 亚洲第一福利在线观看| 国产精品chinese| 亚洲欧洲精品一区二区精品久久久| 欧美四级在线观看| 亚洲高清免费| 国产精品家教| 99国产精品久久久久久久| 国产午夜精品美女视频明星a级| 亚洲理伦电影| 国内精品嫩模av私拍在线观看 | 在线免费日韩片| 欧美一区激情视频在线观看| 亚洲激精日韩激精欧美精品| 欧美在线观看视频一区二区三区| 亚洲精品视频在线| 久久综合伊人77777蜜臀| 亚洲欧美在线视频观看| 欧美午夜a级限制福利片| 亚洲精品久久久久久下一站|