找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

单片机低功耗设计杂谈

[复制链接]
dzyjc7 发表于 2012-4-26 12:34:41 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
现在,有许多单片机应用领域,都是用电池供电,节能成为设计工程师普遍关心的问题。
  进入掉电模式
  现在有很多的低功耗的片子,特别是在进入掉电模式之后,只有1uA的电流。也可以使用电源管理的方法,在不工作的时候,把系统电源关断,这样更省电我用了很久51芯片,本来对它的功耗非常不满,但是因为其价格越来越便宜,本身的性价比依旧很好,所以总也甩不掉。
  1、休眠。一般的系统都不会到了忙不过来的地步,适当的休眠还是可以节省一些功耗的,在一些简单的系统,多抽时间休眠成了省电的关键,你看别的芯片都不耗电,只有单片机了,它就是关键了,在有些时候,提高主频反而会获取更多的休眠时间,反而使系统功耗更小了。但是值得注意的是,经常性的切换休眠和工作状态会让电源产生mV级的波动,特别对于很多线性稳压器只有100mA以内的输出能力的情况更明显,这样的波动或许会影响系统内的AD和一些其他模拟电路,值得注意。
  2、掉电。如果进入了掉电模式,很多51芯片是无法通过中断重新开始工作的,可以外加一个微功耗的单片机来提供复位,这个单片机只负责键盘扫描和复位51单片机,以及发送键盘编码到51芯片。我以前见过一个手持设备,耗电很小,但是包括了大容量存储、显示、输入、数据输出、检索等功能,平时89C51总是处于掉电状态,但是有了键盘操作后,就复位开始运行,处理完键盘送来的任务之后又自动掉电了。
  3、复杂运算。复杂运算(譬如指数运算、浮点乘除)一定会占据更多系统时序,响应减少休眠时间,可以通过查表方式,这样用大容量的表格代替了现场计算,更多的时间不就可以睡觉了吗?
  4、如果软件任务少到一定程度,那么可以考虑把晶体搞到32k去运行,其实这样更省电,但是这意味着51软件基本没什么高速的事情做,也不需要串行通信,否则,还是老老实实面对现实吧。
  我觉得,51芯片用于电池供电的系统不是很合适,但是从开发周期看,它的开发环境很好,毕竟可以承载8位机的相对大型的应用,有时候又不得不用它。我觉得距离51最靠近的AVR单片机更适合将来的应用,因为其性能价格比相对其他单片机还是不错的,除非51芯片可以将来做到在3MIP下,工作电流小于2mA,休眠电流小于500uA,掉电电流小于10uA。在很多的设计中,采用线性降压的方法,电源损耗大,如提高供电电压,并用高效率的DC-DC电源,可延长电源使用的时间89C8252掉电工作,看门狗做“系统运行时钟”同时把看门狗复位“软件模拟成看门狗中断”“狗”叫一次跳起来看看,“RAM值班室登个记”,同时还登记下当前PC+1的值,然后“睡死”过去!
  平均功耗不大于5V/0。3MA,而且有很强的抗干扰性!
  软件优化很重要!
  如64MS一次“狗”叫!起来做40条指令,24MHZ下最多:40*0.5=20US
  于是占空比:20/64000=1/3200 即平均电流下降3200倍!!!
  外设会受复位改变吗?当然!但锁存器干什么啊?!
  如何知道程序能运行多久?下一条运行指令运行到那?
  如果任何时刻,你自己编的程序运行在那个片区,你都不知道,那还叫什么搞软硬件的要天人合一啊?!
  系统任务不忙的情况下,你的看门狗定时复位方法还可以,但是。。。好多情况下似乎做不到呀。我的51系统只有200微安省电是个大难题,特别是51,但只有用心还是可以做到的,特别是工作任务少的时候。我的一个水文遥测系统,用12伏电池供电耗电只有200微安,有8Mbit data flash,一个调制解调器,一个时钟,一个485通信口,一个232通信口,还有6个数码管,是不是够多的了,但它们平时都不工作,我也是用看门狗复位来唤醒51单片机的,每1.6秒一次,用的是x25045,可是25045的复位时间有200毫秒之多,实验发现,51从掉电返回到正常工作只要有30个毫秒足了,别小看节省的这一百多毫秒,因为51在每次醒来是只要发现没有任务就可以马上POWERDOWN了,所以加了一个CMOS的单稳来复位。其它的就是口线的状态一定要注意,不要让它吸收电流也不要输出电流,要是做不到可以试着加一此电路,如反相器。
  稳压电源是个要权衡的事,虽然开关稳压有较高的效率,但在低功耗设计不一定对,开关电源本身消耗的电流就是一个大问题,一个微安级的系统也许要特别对待,我用的是max667线性稳压数微安静态电流.我想开关电源做不到对于外部事务频繁的应用,无法使用掉电方式虽然很多51芯片支持外中断触发芯片脱离POWER DOWN状态(如华邦的W78E58、W77E58),但还是解决不了串行通信的问题,而且对于需要内部精确定时的场合,从POWER DOWN到正常工作需要很长时间,这个恐怕还是难于让人接受。莫非没有一个厂家可以产出高速小功耗的51芯片?没到理呀,PHILIPS不是玩了很久吗?怎么弄出的芯片在12MHz下还是大于10mA,休眠也有几个mA,这也吹牛没下功夫嘛!

LGQ 发表于 2012-5-28 09:34:22 | 显示全部楼层
{:e113:}{:e113:}{:e113:}{:e113:}{:e113:}{:e113:}
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-23 10:33 , Processed in 0.047178 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表