
单片机系统的低功耗设计策略.docx




《单片机系统的低功耗设计策略.docx》由会员分享,可在线阅读,更多相关《单片机系统的低功耗设计策略.docx(4页珍藏版)》请在知海网上搜索。
系统级设计:选择低功耗外围设备企业在选择电子负载之前需要确定电压、功率等参数,比如150V、600V、1200V的电压;功率为150W到48kW等。
(能用两节3V电池供电的产品基本都是小型便携产品。
可以选择一些低功耗贴片,管脚少的单片机,只要够用就行。
单片机的微功耗设计可以从以下几个因素考虑。
有两种低功耗模式:空闲模式。
1、当单片机进入空闲模式时,除CPU外,其他所有硬件都是活动的,数据存储器中的数据和芯片中不涉及程序的特殊功能寄存器在空闲模式下将保持原来的值。
430单片机的低功耗可以通过软件编程来实现。
2、单片机系统的低功耗设计策略作者:清华大学,陈萌萌,邵贝贝摘要:嵌入式系统的低功耗设计需要综合分析各种因素,统筹规划。
如果超过负载,IO端口可能会损坏。
89C51单片机的两种低功耗模式用处不大。
一种是待机模式,省电效果不明显,一种是离机模式,省电效果明显。
不能中断唤醒,就像死机一样,需要手动复位才能唤醒。
3、编号:日期:X,2021学无止境,学无止境页码:第4页,共4页单片机系统低功耗设计策略在设计之初,各种因素往往相互制约、相互影响,一项降低系统功耗的措施有时会带来其他方面的“负面效应”。
因此,需要仔细分析和计算,以降低系统的整体功耗。
4、从硬件和应用软件设计两个方面阐述了一个以单片机为核心的嵌入式系统的低功耗设计需要考虑的一些问题。
5、关键词:低功耗设计硬件设计应用软件设计低功耗模式在嵌入式应用中,人们越来越关注系统的功耗,尤其是对于需要电池供电的便携式系统。
降低系统的功耗,延长电池的寿命,就是降低系统的运行成本。
6、对于以单片机为核心的嵌入式应用,系统功耗的最小化需要从软硬件设计两方面入手。
7、随着越来越多的嵌入式应用使用实时操作系统,如何在操作系统层面降低系统功耗成为一个值得关注的问题。
限于篇幅,本文只讨论硬件设计和应用软件设计。
1硬件设计选择低功耗的单片机可以大大降低系统功耗。
8、可以从电源电压、单片机内部结构设计、系统时钟设计、低功耗模式等方面考察单片机的低功耗特性。
1选择CPU核越简单越好在选择CPU核的时候不要盲目追求性能。
如果8位电脑足够多,就没必要选择16位电脑。
选择的原则应该是“适可而止”目前单片机的速度越来越快,但是性能的提高往往导致功耗的增加。
复杂的CPU集成度高,功能强,但芯片上晶体管多,总漏电流大。
即使进入停止状态,漏电流也会变得明显。
简单的CPU核不仅功耗低,而且成本低。
2选择低压供电系统降低单片机的供电电压可以有效降低其功耗。
现在单片机的电源从兼容TTL的5V降低到3V,3V,2V,甚至8V。
电源电压的下降归因于半导体技术的发展。
从最初的3微米工艺到现在的13微米工艺,CMOS电路的阈值电平阈值不断降低。
低压电源可以大大降低系统的工作电流,但由于晶体管尺寸的不断缩小,晶体管的漏电流有增大的趋势,这也是降低功耗的不利方面。
目前单片机系统的供电电压仍然以5V为主,在过去的五年中,3V供电的单片机系统数量翻了一番,2V供电的系统数量也在增加。
未来五年,低压供电的单片机数量可能会超过5V供电的。
这样,电源电压的降低将是未来单片机发展的一个重要趋势。
3选择低功耗模式的系统低功耗模式是指系统的等待和停止模式。
单片机在这种模式下的功耗会比运行模式下小很多。
传统的单片机在运行模式下有等待和停止两个指令,可以使单片机进入等待或停止状态,达到省电的目的。
在等待模式下,CPU停止工作,但系统时钟不停止,单片机外围I/O模块不停止工作;系统功耗一般是有限的,相当于工作模式的50%70%。
在stop模式下,系统时钟也会停止,通过外部事件中断来重启时钟系统时钟,从而唤醒CPU继续工作,CPU消耗电流可以降低到A级。
在停止模式下,CPU本身实际上不消耗电流。
为了进一步降低系统功耗,需要尽可能关闭单片机的所有I/O模块。
随着I/O模块被一个个关闭,系统的功耗越来越小,进入停止模式的深度也越来越深。
进入深度停止模式无异于关机,此时单片机的功耗可以小于20nA。
特别需要注意的是,片内RAM停止供电后,RAM中存储的数据会丢失,也就是说唤醒CPU后要重新初始化系统。
因此,在系统进入深度停止状态之前,应将重要的系统参数保存在非易失性存储器中,如EEPROM。
深度停止模式关闭所有I/O,可能的唤醒模式有限,只能复位或IRQ中断。
保留的I/O模块越多,系统允许的唤醒中断源就越多。
根据唤醒方式的不同,单片机的功耗会降低到1A到几十A。
例如,用户可以保持外部键盘中断和异步串口(SCI)接收数据中断来唤醒CPU。
保留的唤醒方法越多,系统消耗的功率就越多。
其他可能的唤醒方法包括实时时钟唤醒、看门狗唤醒等。
当关断状态较浅时,外部晶振电路仍在工作。
图1以飞思卡尔的HCS08单片机为例,给出了不同工作模式下的系统功耗。
HCS08是8位单片机,有几个系列。
每个系列的I/O模块数量不同,但低功耗模式下的电流消耗大致相同。
图1HCS08单片机在各种模式下的功耗以R系列单片机为例:室温下(,除去I/O口的负载,电源为2V,可编程锁相环时钟设置为16MHz(总线时钟8MHz),典型电流值为6mA。
当温度上升到85时,在3V电源下,这组数据上升到8mA和8mA。
当电源为2V,外部晶振为2MHz(总线时钟为1MHz)时,典型工作电流降至450A。
在等待状态下,由于时钟没有停止,功耗与时钟频率有很大关系,节省的功耗有限;然而,当进入轻度停止(stop并通过外部中断唤醒时,功耗约为5A。
在中度停止状态(stop下,可以进一步降低功耗。
使用内部1kHz时钟,保持运行时钟,定期唤醒CPU,并将电流增加约3A。
在深度停止状态(stop下,不再保留RAM的数据,只能通过外部复位重启系统,此时的功耗可以降到20nA。
以上数据都是室温下测得的。
当环境温度上升到85时,电流消耗可能增加35倍。
4选择合适的时钟方案时钟选择对系统功耗非常敏感,设计人员需要注意两个方面:首先,系统总线频率要尽可能低。
MCU中的总电流消耗可分为两部分运行电流和泄漏电流。
理想的CMOS开关电路在保持输出状态不变的同时不消耗功率。
例如,在典型的CMOS反相器电路中,如图2所示,当输入端为零时,输出端为1,P晶体管导通,N晶体管关断,没有电流流过。
其实N晶体管是有一定漏电流的,而且随着集成度的提高,管座越薄漏电流会越多。
随着温度的升高,CMOS翻转阈值电压会降低,而漏电流会随着环境温度的升高而增加。
单片机运行时,开关电路由“1”到“0”和由“0”到“1”连续变化,所消耗的功率是由单片机运行引起的,称为“运行电流”。
如图2所示,当两个晶体管通断时,由于两个晶体管的开关延迟时间不能完全一致,在某一时刻,两个晶体管会同时导通,电源与地之间会有一个瞬时大电流,这是单片机工作电流的主要来源。
可以看出,运行电流几乎与单片机的时钟频率成正比,因此尽可能降低系统时钟的运行频率可以有效降低系统功耗。
图2中典型的CMOS反相器第二个是时钟方案,即是否使用锁相环、外部晶振或内部晶振。
新一代的单片机,比如飞思卡尔的HCS08系列单片机,内部有一个晶体振荡器,可以直接作为时钟源。
使用片上晶振的好处是可以省去片外晶振,降低系统的硬件成本;缺点是片上晶振的精度不高(误差一般在25%左右,即使经过校准也可能有2%的相对误差),而且会增加系统的功耗。
现代单片机一般采用锁相环技术,使单片机的时钟频率可以由程序控制锁相环允许用户使用片外低频晶振,可以大大降低板级噪声;而且由于时钟频率可以由程序控制,系统时钟可以在很宽的范围内调整,总线频率往往可以升得很高。
然而,锁相环的使用也会带来额外的功耗。
就时钟方案而言,使用外部晶振而不使用PLL是功耗最低的方案。
2关于应用软件的考虑事项“应用软件”一词是用来区别于“系统软件”或“实时操作系统”的。
软件对于低功耗系统的重要性经常被忽视。
一个重要原因是软件缺陷不像硬件那么容易发现,没有一个严格的标准来判断一个软件的低功耗特性。
尽管如此,设计人员仍然需要在软件中尽可能地反映应用的低功耗特性,以避免那些“看不见的”功耗。
1将“查询”替换为“中断”一个程序是使用中断模式还是查询模式,对于一些简单的应用来说并没有那么重要,但与其低功耗的特性相去甚远。
使用中断模式,CPU可以什么都不做,甚至进入等待模式或停止模式;在查询模式下,CPU必须不断地访问I/O寄存器,这会带来很多额外的功耗。
2用“宏”替换“子程序”程序员必须清楚,读取RAM会比读取Flash带来更大的功耗。
正因为如此,低功耗性能出众的ARM在CPU设计上只允许一次子程序调用。
因为当CPU进入子程序时,会先把当前的CPU寄存器压入堆栈(RAM),当它离开时,会把CPU寄存器弹出堆栈,这至少会带来两次对RAM的操作。
所以程序员可以考虑用宏定义代替子程序调用。
对于程序员来说,编程时调用子程序和宏没有区别,只是编译时会对宏进行扩展,CPU只是顺序执行指令,避免调用子程序。
唯一的问题似乎是代码的增加。
目前单片机的片上Flash越来越大,对于一些不在乎程序代码量大的应用来说,无疑会降低系统的功耗。
3尽量减少CPU运算量减少CPU运算的工作可以从很多方面入手:预先计算一些运算的结果,放在Flash中,用查表法代替实时计算,减少CPU运算的工作量,可以有效降低CPU的功耗(很多单片机都有快速有效的查表指令和寻址方式来优化查表算法);不可避免的实时计算在精度足以避免“过度”计算时结束;尽量使用短数据类型,比如尽量使用基于字符的8位数据代替16位整数数据,尽量使用小数运算代替浮点运算等。
4让I/O模块间歇运行不使用或间歇使用的I/O模块应及时关闭,以节省电能。
RS232的驱动需要相当大的功率,可以通过单片机的一个I/O引脚来控制。
当不需要通信时,驱动器关闭。
未使用的I/O引脚应设置为输出或输入,并用一个上拉电阻上拉。
因为如果管脚没有初始化,可能会增加单片机的漏电流需要特别注意的是,一些简单封装的单片机并没有引出单独的I/O引脚,对于这些看不见的I/O引脚不要忘记初始化。
3结论一个成功的低功耗设计应该是硬件设计和软件设计的结合。
从硬件设计开始,就要充分认识到一个低功耗应用的特点,选择合适的单片机,通过了解其特点来设计系统方案;在软件设计上,要考虑低功耗编程的特殊性,尽量使用单片机的低功耗模式。
限于篇幅,只讨论低功耗设计中的一些常见问题,更多的问题只能由设计人员来分析解决。
第4页,共4页。
- 下载必读:
1、word格式文档无特别注明外均可编辑修改;预览文档经过压缩,下载后原文更清晰!
2、纯PPT格式课件,可能不包含音视频文件,无法播放。请谨慎下单,否则后果自负。
3、试题类资料,若没标明(含答案),则可能不含答案。对于标明含答案的试题,其主观题也可能无答案。请谨慎下单,否则后果自负。- 版权声明:
该资料为 【上传人(卖家):盘川A】主动上传,所获收益归该上传人。本站对所上传内容,不做编辑和修改!知海网作为网络服务提供商,仅对该作品提供存储保护!我们不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 系统 功耗 设计 策略
- 本文标题:
单片机系统的低功耗设计策略.docx
- 链接地址:
https://www.zhwenku.com/edit/40071.html