这不能算是“AVR低功耗设计的经验”,所有的单片鸡——不,是所有的处理器,甚至可以说数字电路都这样。
1、使用休眠SLEEP模式的时候尽量避免采用循环延时和事件等待,使用中断驱动事件
——岂止是休眠模式,不会用中断=不会做嵌入式。
2、使用尽可能低的频率和电压
——CMOS电路的功耗几乎全在过渡过程上,降低工作频率和降低电压就=减少跃变沿的次数和时间,于是功耗就小。
3、不用的管脚接到逻辑电平上,接VCC或接地
——不用的输出管脚这么做=自杀哦,这里说的应该是输入管脚。输入悬空时噪声可能会引起部分逻辑状态翻转,增加了消耗功率的过渡过程。不过空管脚接VCC要小心,注意会不会引起Latch up。
关于这点还应加一条:不用的输入管脚,如果已有内置上(下)拉的话,就还是让它悬空的好。一则接错方向反而多耗电,二则即使掉进一点金属垃圾,悬空管脚不会出事,提高了可靠性。
4、关闭所有没有使用的CPU周边,如UART,TWI,ADC……
——那当然,随手关灯啦。
5、优化C代码的设计,尽量避免密集运算
——不言而喻,本来1000条指令干的活儿,优化成100条指令就干完,休息多了,自然节能。
BTW,“避免密集运算”啥意思?俺不明白……
[ 本帖最后由 仙猫 于 2009-10-16 13:43 编辑 ] |