中电网移动|移动中电网|高清图滚动区

不会低功耗设计?MCU低功耗设计的5点注意要点

功耗设计不合格?设计的产品功耗太高了?不符合低功耗的要求?没事没事,这篇文章中,小编将对MCU设计时的低功耗的5点注意要点予以介绍。如果你正在头疼低功耗设计如何实现或者你对本文内容具有兴趣,不妨从本文中汲取一点灵感哦。

微控制单元(Microcontroller Unit;MCU) ,又称单片微型计算机(Single Chip Microcomputer )或者单片机,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口,甚至LCD驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。诸如手机、PC外围、遥控器,至汽车电子、工业上的步进马达、机器手臂的控制等,都可见到MCU的身影。
 
MCU功耗明明应该只有176nA,可是测出来的硬是达到了700mA!简直是不能忍啊,想死的心都有了。
 
平常我们在使用MCU低功耗时经常会出现实际功耗比理论功耗偏差较大,如在某些低到微安级的功耗模式,而我们设计的低功耗怎么测都是毫安级的,电流竟然能够高出理论几百到上千倍,遇到这种情况千万不要怕,只要认真你就赢了。
 
下面列出在设计低功耗时需要注意的五点。
 
1、掐断外设命脉——关闭外设时钟

先说最直观的,也是我们都比较注意的方面,就是关闭MCU的外设时钟。对于现在大多数的MCU,其外设模块都对应着一个时钟开关,只要打开这个外设时钟,就可以正常使用该外设了,当然,该外设也就会产生相应的功耗;反之,如果想要让这个外设不产生功耗,一般只需要关闭该外设时钟即可。
 
2、让工作节奏慢下来——时钟不要倍频

除了外设模块功耗消耗之外,还有一个功耗大户,那就是PLL和FLL模块。PLL和FLL主要是用来对原始的时钟信号进行倍频操作,从而提高系统得整体时钟,相应的其功耗也会被提上去。所以在进入低功耗前,需要切换时钟模式,旁路掉PLL和FLL模块,等到MCU唤醒之后再把时钟切换回去。
 
3、围堵涓涓细流——注意IO口的电平状态

如果认为只要关闭外设时钟就能够保证外设不在耗电,那你就真的太年轻了。如果IO口没有做好处理的话,它就会在暗地里偷走功耗,而你却浑然不知。具体原因是这样的,一般IO内部或者外部都会有上下拉电阻,举个例子如下图所示,假设某个IO口有个10KΩ的上拉电阻,根据欧姆定律,此引脚就会消耗3.3V/10K=0.33mA的电流,假如有四、五个这样的IO口,那么几个毫安的电流就这样贴进去了,太可惜了。
 
所以在进入低功耗之前,请逐个检查IO的状态:

如果该IO口带上拉,请设置为高电平输出或者高阻态输入;
如果该IO口带下拉,请设置为低电平输出或者高阻态输入;

4、睦邻友好合作——注意IO与外设IC的统筹

IO口的上下拉电阻消耗电流这一因素相抵比较明显,下面咱们来说一个不明显的因素:IO口与外部IC相连时的电流消耗。假如某个IO口自带上拉,而与此IO相连的IC引脚偏偏是自带下拉的,那么无论这个引脚处于什么样的电平输出,都不可避免的会产生一定的电流消耗。所以凡是遇到这一类的情况,首先需要阅读外设IC的手册,确定好此引脚的状态,做到心中有数;然后再控制MCU睡眠前,设置好MCU的IO的上下拉模式及输入输出状态,要保证一丝儿电流都不要被它消耗掉。
 
5、断开调试器连接——不要被假象所迷惑

还有一类比较奇特,检测出来的电流消耗很大,可实际结果是自己杞人忧天,什么原因呢?是因为在测试功耗的时候MCU还连着调试器呢!这时候大部分电流就会被调试器给掳走,平白无故的让我们产生极度郁闷的心情。所以在测试低功耗的时候,一定不要连接着调试器,更不要边调试边测电流。

猜你喜欢
中电网移动|移动中电网|频道导航区