2、 在不需要运行时间严格要求的任务,如UART通信或精密脉冲时钟时序等,尽可能使用内
部时钟,这通常是低功耗的首选。
3、 关断所有不使用的外设:如PWM模块、AD转换器等等。 4、 尽可能在程序代码中使用查找表,而不是让CPU去计算结果。
5、 检查所有外部元器件功耗,减少驱动外设,如EEPROM或者外部模拟电路的I/O 数目。 6、 尽可能采用低功耗的器件或电路设计。比如,低功耗场合能不用LED尽可能不要用,声响
的电路也是一样。
7、 尽可能选择带有关闭功能的器件,比较运放、R232 电路、逻辑电路等等...在不必要的时候
使其关闭。
8、 在显示方便也要选择低功耗的显示方式,比如采用LCD片,而不要用LCD模块。或采用LCD
模块时将背光关掉。
9、 一些常用开关晶体管由三极管改为MOSFET管。
10、 有可能的话,不要选择小阻值分压;这样同样可减少功耗。按键上接电阻同样可以选择
大点。对于模拟前端部分可能不太适合,因为当用高精度ADC时,电阻值越大热噪声就会越大。所以这做法不适宜用在高精度ADC前端。
11、 关于MSP430的IO 处理,我个人的理解是可以空着,并设置为输入。因为设置为输入时
IO 处理高阻态,IO 的漏电流只有50nA。
12、 能不用LDO 尽可能不要用LDO,因为线性电源器件会带功耗上的增加。确实没办法了可
以选择CMOS型的LDO器件。或采用高效的DC/DC电源管理电路,以提高效能利用。 13、 要了解MSP430的4种不同模式下的时钟与模块使用情况,这样你才控制好整个设计的
功耗管理。
14、 若不是很需要很高精度的时钟的话尽可能不要外部晶振,尽可能使用内部的DCO作为
MCLK。当程序中需要在串口时,这时可以开启所需的时钟源以得到精度的波特率,不用时则要关闭掉时钟和串口模块。如果不是高速响应处理任务的话尽可能不要用选择外部晶体时钟作为MCLK。
15、 在进入低功耗模式前,尽可能将MCLK改为DCO模式。因为DCO模式在进入功耗模式后,
在得到中断唤醒时是最速度启动工作的时钟源。这样可以大大减小在唤醒时节省能源。如果唤醒后确实需要高速度时钟源,此时可以再转换到高速度的时钟源上使用。 16、 _BIS_SR(LPM0_bits);//进入低功耗模式语句
for(;;) {
_BIS_SR(LPM0_bits); key_deal(); }
/* interrupt p1 */ #pragma vector=PORT1_VECTOR __interrupt void getKeyValue(void) { . . .
_BIC_SR_IRQ(LPM0_bits); //中断结束后退出低功耗,执行key_deal()语句 }
17、 理解低功耗模式LPM0\\LPM1\\LPM2\\LPM3的作用
因篇幅问题不能全部显示,请点此查看更多更全内容