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

发布者:Howard_Sun最新更新时间:2006-11-01 来源: 电子设计应用关键字:功耗  控制器  RISC 手机看文章 扫描二维码
随时随地手机看文章
随着微电子技术和计算机技术的发展,尤其是微机在各个领域的普遍应用,功耗、成本、体积以及可靠性等指标均成为设计者所关注的重要问题。尤其是在由电池供电的设备中,如何降低设备功耗成为设计的首要任务。本文中以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、两线串行接口、定时器/ 计数器、看门狗和中断系统则继续工作。如果我们只需要其中一种或几种模块运行,还可以启用功耗抑制寄存器关闭其他模块来降低功耗。具体程序如下:
ldi r16,$e7
sts prr,r16   ;关闭未用外设
ldi r16,$01
out smcr,r16  ;进入掉电模式
wait:
sleep
nop
rjmp wait

值得注意的是在休眠模式,要使端口引脚配置为最小的功耗模式,必须避免引脚悬空和防止模拟输入电平接近VCC/2时以消耗太多的电流。当引脚未被使用,将引脚配置为输入,并使能内部上拉,给引脚一个确定的电平。

电源电压的选择
CMOS 逻辑电路中的电流与电源电压成正比,功耗与电源电压的平方成正比,因此降低器件的供电电压可以减小功耗。芯片所要求的电源电压为1.8-5.5V。由于供电电压与芯片能工作的最大频率有关联,因此应在频率满足处理速度的要求下,尽可能采用低的电源电压。


表1 各种工作模式的典型供电电流值

典型设计

图3是以ATmega48为核心的定时控制系统框图。该系统是油井工具投放机的控制部分。设备匀速从地面向下投放,延时时间控制设备投放的深度。延时时间一到,电机马上启动,使设备投放机停止运行。延时时间由多圈线位器设定。设定值经内部AD转换后,在液晶上显示。液晶采用北京青云公司的LCM061A模块。该液晶能在2.7V-5.2V内工作,且工作电流小。为了加强驱动能力,PB1、PB2并联使用,并通过TIP122直接驱动直流电机。考虑到系统时钟越低,功耗越低,并结合本系统的实际功能要求,时钟源采用内部128k低频时钟。在2节500mA可充电电池供电的情况下,系统能可靠的运行14天。

             图3定时控制系统框图


         图4 主程序流程图

主程序流程图如图4所示。在主程序中,在程序初始化时,关闭未用到的外设模块,避免消耗过多的电流。IO口初始化时,PD口为输入口,使能内部上拉。所有悬空的IO口都使能内部上拉,使之有确定的电平。当检测到有按键按下时,单片机禁用对应IO口的内部上拉,避免内部上拉电阻消耗不必要的电流。(ATmega48的引脚上拉电阻为30K~60K之间。)

在单片机完成初始化后,单片机进入空闲模式,CPU停止运行,定时器/ 计数器和中断系统继续工作。此时,实测消耗电流为0.14mA。当定时时间一到,CPU即被唤醒,执行响应的程序后继续进入空闲模式。

结语

本文介绍了ATmega48单片机低功耗特性,并通过具体实例,说明了在硬件电路设计和编制程序时,应注意的问题和低功耗设计方法,具有一定的参考价值。

参考文献:
1. Atmel Corporation. ATmega48/88/168 Preliminary Summary [EB/OL].www.atmel.com/literature,2005
2. 陆希玉,唐昆,催慧娟. 基于嵌入式系统的低功耗设计[J]. 微型计算机信息,2005(7-2)
3. 陈春鸿. CMOS集成电路的功耗分析及低功耗设计技术[J]. 浙江大学学报,1998(9)

关键字:功耗  控制器  RISC 引用地址:基于Atmega48单片机的低功耗系统设计

上一篇:基于Atmega48单片机的低功耗系统设计
下一篇:单片机在晶闸管触发电路中的应用

推荐阅读最新更新时间:2024-03-16 12:18

基于ATmegal 28的调光控制器方案设计
引言 节能是照明灯光控制中的一项重要指标。目前,存在模拟调光控制系统和数字调光控制系统。模拟调光控制系统包括模拟调光控制台(调光控制器)和模拟调光器。其中,模拟调光控制台输出O~10 V控制电压,通过模拟调光器的0~10 V接口调节其所带灯具的光强弱。数字调光控制系统包括数字调光控制台(调光控制器)和数字调光器。其采用的协议为DMX512控制协议,该协议的物理接口为RS485。 虽然数字调光控制系统有其优点,但由于成本在短时间内无法全部替代模拟控制系统,模拟调光控制仍占很大比率。现有的模拟调光控制台大多采用拉杆、旋钮、开关等对模拟信号进行变换,其控制精度不高,体积较大且只实现灯具通断控制,所以很有必要开发一种控制精度高、体
[工业控制]
基于ATmegal 28的调光<font color='red'>控制器</font>方案设计
stm8l低功耗系列
最近干刚做了一个stm8的项目用的是L低功耗系列,其中遇到一个问题。外设寄存器的值怎么都写入不进去。用IAR仿真产看寄存器的值,不论写进去多少,都是初始值。后来把所有寄存器都写了一遍,发现有的能写进去,有的写不进去。比如GPIO的寄存器就能写进去。百思不得姐,偶然查看clock的库函数发现个函数是设置外设时钟的。这个系列,亦或者整个低功耗系列的每个外设是不是都需要在时钟寄存器中单独设置时钟。(以前所使用的芯片都是在外设寄存器中使能或者是禁使能)
[单片机]
TI超低功耗无线连接解决方案满足消费类医疗需求
      日前,德州仪器 (TI) 宣布推出两款面向 消费类医疗 、移动附件、运动以及健康应用的超低功耗短距离 无线连接 解决方案。CC2540 单模式蓝牙 (Bluetooth®) 低能耗片上系统与 CC257x ANT™ 网络处理器可使目标应用通过一颗纽扣电池连续工作超过一年。作为既可提供蓝牙低能耗(单模式与双模式)解决方案又可提供 ANT 链路的唯一供应商,TI 可为客户提供全面测试的高稳健型产业环境,可充分满足 传感器 应用与移动手持外设的需求。      TI 低功耗 RF 产品部市场营销经理 Volker Prueller 指出:“由于功耗比传统无线技术大幅降低,因此工程师现在可开发出更小型的产品
[工业控制]
PIC系列单片机应用设计与实例
   一.引言      在微 控制器 (Microcontroller)应用领域日益广泛的今天,各个领域的应用也向微控制器厂商提出了更高要求,希望速度更快、功耗更低、体积更小、价格更廉以及组成系统时所需要的外围器件更少;随着越来越多的各种非电子工程技术人员的应用需求,他们想把微控制器作为嵌入式部件应用到自己熟悉的领域中,还提出简单易学易用的要求。用户的需求就是厂商的市场和动力,老的半导体厂商顺应潮流不断推出新品种,新的半导体厂商则后来居上,把越来越多的外围接口器件集成到片内,功能越来越强、性能越来越高。迄今至少也有35家国外半导体厂商的微控制器进入中国市场。在这众多的五彩缤纷的微控制器中,美国Microchip技术公司的PIC系
[单片机]
基于控制器FAN7387的荧光灯与HID灯镇流器
    1 FAN7387 的结构、特点及其功能     1. 1 FAN7387的基本结构和引脚功能     FAN7387采用工作温度为- 40 到125 并符合欧盟ROHS指令的8引脚SOP和D IP封装,引脚排列如图1所示。 图1 FAN7387顶视图     FAN7387芯片集成了电源电路、镇流器控制电路和高端与低端(外部MOSFET ) 栅极驱动器,如图2所示。     FAN7387各个引脚说明见表1。   图2 FAN7387芯片电路组成框图 表1 FAN7387引脚说明     1. 2 主要特点和功能。     FAN7387的主要特点和功能如下所述。
[电源管理]
基于<font color='red'>控制器</font>FAN7387的荧光灯与HID灯镇流器
基于FPGA 的VGA 图形控制器的实现方法
引言   VGA(视频图形阵列)作为一种标准的显示接口得到广泛的应用。利用FPGA 芯片和EDA 设计方法,可以因地制宜,根据用户的特定需要,设计出针对性强的VGA 显示控制器,不仅能够大大降低成本,还可以满足生产实践中不断变化的用户需要,产品的升级换代方便迅速。   在本设计中采用了Altera 公司的EDA 软件工具Quartus II ,并以ACEX系列FPGA 的器件为主实现硬件平台的设计。   1 基于FPGA 的VGA 图形控制器系统框图   根据自顶向下的程序设计思想,采用模块化设计,我们对VGA 图形控制器进行功能分离并按层次设计。利用VHDL 硬件描述语言逐一对每个功能模块进行描述,并逐个通过编译仿真
[嵌入式]
基于FPGA 的VGA 图形<font color='red'>控制器</font>的实现方法
美国Micro Magic公司研制64位RISC-V内核,居然快过M1?
近日,一家位于美国加州森尼维尔的小型电子设计公司Micro Magic宣称设计、生产出了全世界最快的64位RISC-V内核,比苹果的M1 芯片和 Arm Cortex-A9 表现还要出色。 据Micro Magic的声明,这款原型CPU在1.1v电压下可以达到5GHz的时钟速度,远高于运行速度为3.2GHz的英特尔Xeon服务器芯片E7,CoreMarks跑分达到13000分。而1.1伏时,该芯片只需要消耗1瓦的功率,不到英特尔Xeon功率的1%。此外,单个Micro Magic核心在0.8V下可以达到4.25GHz,CoreMarks跑分达到11000分,但消耗的功率仅为200mW。据称,该RISC-V芯片的速度和
[嵌入式]
美国Micro Magic公司研制64位<font color='red'>RISC</font>-V内核,居然快过M1?
带自校准功能的低功耗运算放大器
  价格合理的先进个人医疗设备的大量涌现,正在改变着整个保健行业,消费者可以在家中或旅途中监测自身的生命体征和其他关键指标,而无需劳命伤财地亲自到医院看病。根据Gartner公司的调查,便携式消费类医疗设备,如血糖检测仪、血压计、胰岛素泵和心率检测器等是医疗设备市场中增长最快的部分。Databeans公司最近所做的一项医疗半导体报告也指出,未来五年家用医疗设备市场将有9%的增长(复合年增长率,CAGR)。        个人医疗设备市场的迅速增长源于多种因素:老年人需要经常性地进行健康体检、传统医疗服务费用高昂、消费者逐渐意识到保健设备的益处、个人医疗设备可以方便地在网上或零售店里买到、半导体技术的不断进步,使得这些消费类保健设备日
[电源管理]
带自校准功能的低<font color='red'>功耗</font>运算放大器
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved