新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Atmega48單片機(jī)的低功耗系統(tǒng)設(shè)計(jì)

基于Atmega48單片機(jī)的低功耗系統(tǒng)設(shè)計(jì)

作者:西安科技大學(xué)機(jī)械工程學(xué)院 郝迎吉 文微 王燕 時(shí)間:2008-03-25 來源:電子產(chǎn)品世界 收藏

  隨著微電子技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展,尤其是微機(jī)在各個(gè)領(lǐng)域的普遍應(yīng)用,功耗、成本、體積以及可靠性等指標(biāo)均成為設(shè)計(jì)者所關(guān)注的重要問題。尤其是在由電池供電的設(shè)備中,如何降低設(shè)備功耗成為設(shè)計(jì)的首要任務(wù)。本文中以ATMEL公司的為例,介紹了設(shè)計(jì)的一般方法。

本文引用地址:http://butianyuan.cn/article/80621.htm

  

  系統(tǒng)設(shè)計(jì)首要是選擇合適的單片機(jī)。單片機(jī)是一款8位微控制器,具有高性能、的顯著特點(diǎn)。由于采用RISC精簡(jiǎn)指令集結(jié)構(gòu),其指令集大多為單周期指令,具有高速運(yùn)行的特點(diǎn)。3V供電時(shí),未使能內(nèi)部看門狗的情況下,Atmega48的典型掉電電流小于1uA。具體工作電流見圖1。而且該單片機(jī)在1.8V~5.5V的電壓范圍內(nèi)均能正常工作,片內(nèi)自帶4K字節(jié)的flash、256字節(jié)的E2PROM,以及512字節(jié)SRAM;并內(nèi)置6~8路10位AD轉(zhuǎn)換器、看門狗、3個(gè)16位的定時(shí)/計(jì)數(shù)器、具有獨(dú)立振蕩器的實(shí)時(shí)計(jì)數(shù)器RTC 和6路PWM輸出。另外還具有五種休眠模式,引腳變化及中斷可喚醒MCU。

  低功耗設(shè)計(jì)方法

  以單片機(jī)為核心構(gòu)成的系統(tǒng),其系統(tǒng)的總能耗是由單片機(jī)能耗及其外圍電路能耗共同構(gòu)成。為了降低整個(gè)系統(tǒng)的功耗,除了要降低單片機(jī)自身的運(yùn)行功耗外,還要降低外圍電路的功耗。對(duì)外圍電路而言,首先選擇低電壓低功耗器件,如用LMV324代替?zhèn)鹘y(tǒng)的LM324,SP3223EEY代替MAX232等。其次,CMOS器件輸入引腳不能懸空。如果輸入引腳懸空,在輸入引腳上很容易積累電荷,產(chǎn)生較大的感應(yīng)電動(dòng)勢(shì),使引腳電位處于0至1間的過渡區(qū)域。另外,單片機(jī)外圍電路應(yīng)盡量避免采用阻性元件。

  Atmega48單片機(jī)的功耗主要與系統(tǒng)頻率,工作模式,電源電壓及外圍模塊有關(guān)。由圖1和圖2可知,Atmega48單片機(jī)的工作電流與其工作頻率、工作電壓成正比。

  降低系統(tǒng)時(shí)鐘頻率

  功耗與工作頻率有關(guān)。工作頻率增加時(shí),功耗也線性的增加。系統(tǒng)工作頻率的降低,電路的延時(shí)增加導(dǎo)致系統(tǒng)性能下降,因此在利用頻率降低系統(tǒng)功耗的時(shí)候,要在能耗和速度之間進(jìn)行權(quán)衡。

  Atmega48的時(shí)鐘源可以選擇片內(nèi)的RC振蕩器,也可以是來自外部時(shí)鐘。片內(nèi)RC振蕩器提供了可校準(zhǔn)的8M時(shí)鐘和128k低功率振蕩器。外部時(shí)鐘可以選用低功率晶體,滿振幅晶體和低頻晶振。通過編程Flash熔絲位,可以選擇所需的時(shí)鐘源。      
   
  ATmega48可以通過設(shè)置時(shí)鐘預(yù)分頻寄存器CLKPR來得到分頻的系統(tǒng)時(shí)鐘。當(dāng)需要的系統(tǒng)處理能力比較低時(shí)可以利用這個(gè)特性來降低功耗。預(yù)分頻對(duì)所有時(shí)鐘源都適用,并且影響CPU 及所有同步外設(shè)的時(shí)鐘頻率。

  單片機(jī)的時(shí)鐘系統(tǒng)主要包括:CPU時(shí)鐘,F(xiàn)lash時(shí)鐘,I/O時(shí)鐘,異步定時(shí)器時(shí)鐘和ADC時(shí)鐘。在大多數(shù)情況下,這些時(shí)鐘并不需要同時(shí)工作。時(shí)鐘功耗抑制寄存器PRR 提供終止單獨(dú)外設(shè)時(shí)鐘的方法以降低功耗。通過設(shè)置功耗抑制寄存器PRR,將不使用的外圍模塊關(guān)掉,以降低芯片功耗。例如,如果不使用ADC模塊,可以向功耗抑制寄存器PRR中的PRADC位寫“1”,關(guān)閉芯片的ADC模塊。同時(shí),為了降低功耗,可以通過使用不同的休眠模式來禁止無需工作的模塊。

  單片機(jī)的休眠模式

  休眠模式可以使應(yīng)用程序關(guān)閉MCU 中沒有使用的模塊,從而降低功耗。AVR 具有不同的休眠模式,允許用戶根據(jù)自己的應(yīng)用要求實(shí)施剪裁。Atmega48單片機(jī)具有五種休眠模式:空閑模式、ADC 噪聲抑制模式、掉電模式、省電模式和等待模式。使用內(nèi)部128 kHz RC 振蕩器,其工作電流見表2。在此以空閑模式為例說明如何根據(jù)需要選擇最低功耗的運(yùn)行模式。因?yàn)檫@種休眠模式只停止clkCPU 和clkFLASH,而其他時(shí)鐘繼續(xù)工作。所以當(dāng)用SLEEP指令使MCU進(jìn)入空閑模式時(shí),CPU停止運(yùn)行,而 USART、模擬比較器、ADC、兩線串行接口、定時(shí)器/ 計(jì)數(shù)器、看門狗和中斷系統(tǒng)則繼續(xù)工作。如果我們只需要其中一種或幾種模塊運(yùn)行,還可以啟用功耗抑制寄存器關(guān)閉其他模塊來降低功耗。具體程序如下:

  ldi r16,$e7          
  sts prr,r16      ;關(guān)閉未用外設(shè)
  ldi r16,$01
  out smcr,r16     ;進(jìn)入掉電模式
  wait:
  sleep
  nop
  rjmp wait 

  值得注意的是在休眠模式,要使端口引腳配置為最小的功耗模式,必須避免引腳懸空和防止模擬輸入電平接近VCC/2時(shí)以消耗太多的電流。當(dāng)引腳未被使用,將引腳配置為輸入,并使能內(nèi)部上拉,給引腳一個(gè)確定的電平。

  電源電壓的選擇

  CMOS 邏輯電路中的電流與電源電壓成正比,功耗與電源電壓的平方成正比,因此降低器件的供電電壓可以減小功耗。芯片所要求的電源電壓為1.8-5.5V。由于供電電壓與芯片能工作的最大頻率有關(guān)聯(lián),因此應(yīng)在頻率滿足處理速度的要求下,盡可能采用低的電源電壓。

  典型設(shè)計(jì)

  圖3是以ATmega48為核心的定時(shí)控制系統(tǒng)框圖。該系統(tǒng)是油井工具投放機(jī)的控制部分。設(shè)備勻速?gòu)牡孛嫦蛳峦斗?,延時(shí)時(shí)間控制設(shè)備投放的深度。延時(shí)時(shí)間一到,電機(jī)馬上啟動(dòng),使設(shè)備投放機(jī)停止運(yùn)行。延時(shí)時(shí)間由多圈線位器設(shè)定。設(shè)定值經(jīng)內(nèi)部AD轉(zhuǎn)換后,在液晶上顯示。液晶采用北京青云公司的LCM061A模塊。該液晶能在2.7V-5.2V內(nèi)工作,且工作電流小。為了加強(qiáng)驅(qū)動(dòng)能力,PB1、PB2并聯(lián)使用,并通過TIP122直接驅(qū)動(dòng)直流電機(jī)??紤]到系統(tǒng)時(shí)鐘越低,功耗越低,并結(jié)合本系統(tǒng)的實(shí)際功能要求,時(shí)鐘源采用內(nèi)部128k低頻時(shí)鐘。在2節(jié)500mA可充電電池供電的情況下,系統(tǒng)能可靠的運(yùn)行14天。

  主程序流程圖如圖4所示。在主程序中,在程序初始化時(shí),關(guān)閉未用到的外設(shè)模塊,避免消耗過多的電流。IO口初始化時(shí),PD口為輸入口,使能內(nèi)部上拉。所有懸空的IO口都使能內(nèi)部上拉,使之有確定的電平。當(dāng)檢測(cè)到有按鍵按下時(shí),單片機(jī)禁用對(duì)應(yīng)IO口的內(nèi)部上拉,避免內(nèi)部上拉電阻消耗不必要的電流。(ATmega48的引腳上拉電阻為30K~60K之間。)

  在單片機(jī)完成初始化后,單片機(jī)進(jìn)入空閑模式,CPU停止運(yùn)行,定時(shí)器/ 計(jì)數(shù)器和中斷系統(tǒng)繼續(xù)工作。此時(shí),實(shí)測(cè)消耗電流為0.14mA。當(dāng)定時(shí)時(shí)間一到,CPU即被喚醒,執(zhí)行響應(yīng)的程序后繼續(xù)進(jìn)入空閑模式。

  結(jié)語(yǔ)

  本文介紹了ATmega48單片機(jī)低功耗特性,并通過具體實(shí)例,說明了在硬件電路設(shè)計(jì)和編制程序時(shí),應(yīng)注意的問題和低功耗設(shè)計(jì)方法,具有一定的參考價(jià)值?!?/p>

  參考文獻(xiàn):

  1.  Atmel Corporation.  ATmega48/88/168 Preliminary Summary [EB/OL].www.atmel.com/literature,2005

  2.  陸希玉,唐昆,催慧娟. 基于嵌入式系統(tǒng)的低功耗設(shè)計(jì)[J]. 微型計(jì)算機(jī)信息,2005(7-2)

  3.  陳春鴻. CMOS集成電路的功耗分析及低功耗設(shè)計(jì)技術(shù)[J]. 浙江大學(xué)學(xué)報(bào),1998(9)



關(guān)鍵詞: Atmega48 低功耗 單片機(jī)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉