基于Atmega48单片机的低功耗系统设计

[09-12 18:12:45]   来源:http://www.88dzw.com  单片机学习   阅读:8111

文章摘要: 摘要:介绍了atmega48单片机的特性,提出了其低功耗设计的一般方法,并以定时控制系统的设计为例,具体说明atmega48的低功耗设计方案。 随着微电子技术和计算机技术的发展,尤其是微机在各个领域的普遍应用,功耗、成本、体积以及可靠性等指标均成为设计者所关注的重要问题。尤其是在由电池供电的设备中,如何降低设备功耗成为设计的首要任务。本文中以atmel公司的atmega48单片机为例,介绍了单片机低功耗设计的一般方法。 atmega48单片机 低功耗系统设计首要是选择合适的单片机。atmega48单片机是一款8位微控制器,具有高性能、低功耗的显著特点。由于采用r

基于Atmega48单片机的低功耗系统设计,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com
        摘要:介绍了atmega48单片机的特性,提出了其低功耗设计的一般方法,并以定时控制系统的设计为例,具体说明atmega48的低功耗设计方案。

     随着微电子技术和计算机技术的发展,尤其是微机在各个领域的普遍应用,功耗、成本、体积以及可靠性等指标均成为设计者所关注的重要问题。尤其是在由电池供电的设备中,如何降低设备功耗成为设计的首要任务。本文中以atmel公司的atmega48单片机为例,介绍了单片机低功耗设计的一般方法。

atmega48单片机

     低功耗系统设计首要是选择合适的单片机。atmega48单片机是一款8位微控制器,具有高性能、低功耗的显著特点。由于采用risc精简指令集结构,其指令集大多为单周期指令,具有高速运行的特点。3v供电时,未使能内部看门狗的情况下,atmega48的典型掉电电流小于1ua。具体工作电流见图1。而且该单片机在1.8v~5.5v的电压范围内均能正常工作,片内自带4k字节的flash、256字节的e2prom,以及512字节sram;并内置6~8路10位ad转换器、看门狗、3个16位的定时/计数器、具有独立振荡器的实时计数器rtc 和6路pwm输出。另外还具有五种休眠模式,引脚变化及中断可唤醒mcu。


        图1 工作电流与系统频率的关系  图2工作电流与供电电压的关系(128k)

低功耗设计方法

     以单片机为核心构成的系统,其系统的总能耗是由单片机能耗及其外围电路能耗共同构成。为了降低整个系统的功耗,除了要降低单片机自身的运行功耗外,还要降低外围电路的功耗。对外围电路而言,首先选择低电压低功耗器件,如用lmv324代替传统的lm324,sp3223eey代替max232等。其次,cmos器件输入引脚不能悬空。如果输入引脚悬空,在输入引脚上很容易积累电荷,产生较大的感应电动势,使引脚电位处于0至1间的过渡区域。另外,单片机外围电路应尽量避免采用阻性元件。

      atmega48单片机的功耗主要与系统频率,工作模式,电源电压及外围模块有关。由图1和图2可知,atmega48单片机的工作电流与其工作频率、工作电压成正比。

降低系统时钟频率
     功耗与工作频率有关。工作频率增加时,功耗也线性的增加。系统工作频率的降低,电路的延时增加导致系统性能下降,因此在利用频率降低系统功耗的时候,要在能耗和速度之间进行权衡。

    atmega48的时钟源可以选择片内的rc振荡器,也可以是来自外部时钟。片内rc振荡器提供了可校准的8m时钟和128k低功率振荡器。外部时钟可以选用低功率晶体,满振幅晶体和低频晶振。通过编程flash 熔丝位,可以选择所需的时钟源。      
     
    atmega48可以通过设置时钟预分频寄存器clkpr来得到分频的系统时钟。当需要的系统处理能力比较低时可以利用这个特性来降低功耗。预分频对所有时钟源都适用,并且影响cpu 及所有同步外设的时钟频率。

     单片机的时钟系统主要包括:cpu时钟,flash时钟,i/o时钟,异步定时器时钟和adc时钟。在大多数情况下,这些时钟并不需要同时工作。时钟功耗抑制寄存器prr 提供终止单独外设时钟的方法以降低功耗。通过设置功耗抑制寄存器prr,将不使用的外围模块关掉,以降低芯片功耗。例如,如果不使用adc模块,可以向功耗抑制寄存器prr中的pradc位写“1”,关闭芯片的adc模块。同时,为了降低功耗,可以通过使用不同的休眠模式来禁止无需工作的模块。

单片机的休眠模式
     休眠模式可以使应用程序关闭mcu 中没有使用的模块,从而降低功耗。avr 具有不同的休眠模式,允许用户根据自己的应用要求实施剪裁。atmega48单片机具有五种休眠模式:空闲模式、adc 噪声抑制模式、掉电模式、省电模式和等待模式。使用内部128 khz rc 振荡器,其工作电流见表2。在此以空闲模式为例说明如何根据需要选择最低功耗的运行模式。因为这种休眠模式只停止clkcpu 和clkflash,而其他时钟继续工作。所以当用sleep指令使mcu进入空闲模式时,cpu停止运行,而 usart、模拟比较器、adc、两线串行接口、定时器/ 计数器、看门狗和中断系统则继续工作。如果我们只需要其中一种或几种模块运行,还可以启用功耗抑制寄存器关闭其他模块来降低功耗。具体程序如下:

[1] [2]  下一页


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习
分类导航
最新更新
热门排行