msp430f149的低功耗模式

  430的低功耗确实很强啊,虽然和VR单片机比起来速度慢了好多。在CPU进行工作时,如果没有什么事情干,就得进入低功耗模式啦,LMPX(0~4)这几种模式的具体事项就是如下的,得记住了。

一,运行模式
MSP430具有一种活动模式和五种软件可选的低功耗运行模式。一个中断事件可以将芯片从五种低功耗模式中的任何一种唤醒,为请求服务并在从中断程序返回时恢复低功耗模式。下面6种运算模式由软件配置。

● 活动模式AM:
-所有时钟活动

● 低功耗模式0(LPM0)
-CPU关闭
ACLK和SMCLK保持活动,MCLK关闭

● 低功耗模式1(LPM1)
-CPU关闭
ACLK和SMCLK保持活动,MCLK关闭
如果DCO在活动模式中没有使用,DCO的直流发生器将关闭

● 低功耗模式2(LPM2)
-CPU关闭
MCLK、FLL+,DCOCLK关闭
DCO的直流发生器保持活动
ACLK保持活动


● 低功耗模式3(LPM3)
-CPU关闭
MCLK、FLL+,DCOCLK关闭


ACLK保持活动


● 低功耗模式4(LPM4)
-CPU关闭
ACLK关闭
MCLK、FLL+,DCOCLK关闭
DCO的直流发生器关闭
晶体振荡器停止

 

 /* Low Power Modes coded with Bits 4-7 in SR */

#ifndef __IAR_SYSTEMS_ICC__ /* Begin #defines for assembler */
#define LPM0                (CPUOFF)
#define LPM1                (SCG0+CPUOFF)
#define LPM2                (SCG1+CPUOFF)
#define LPM3                (SCG1+SCG0+CPUOFF)
#define LPM4                (SCG1+SCG0+OSCOFF+CPUOFF)
/* End #defines for assembler */

 

#else /* Begin #defines for C */
#define LPM0_bits           (CPUOFF)
#define LPM1_bits           (SCG0+CPUOFF)
#define LPM2_bits           (SCG1+CPUOFF)
#define LPM3_bits           (SCG1+SCG0+CPUOFF)
#define LPM4_bits           (SCG1+SCG0+OSCOFF+CPUOFF)

 

#include "in430.h"

#define LPM0      _BIS_SR(LPM0_bits)     /* Enter Low Power Mode 0 */
#define LPM0_EXIT _BIC_SR_IRQ(LPM0_bits) /* Exit Low Power Mode 0 */
#define LPM1      _BIS_SR(LPM1_bits)     /* Enter Low Power Mode 1 */
#define LPM1_EXIT _BIC_SR_IRQ(LPM1_bits) /* Exit Low Power Mode 1 */
#define LPM2      _BIS_SR(LPM2_bits)     /* Enter Low Power Mode 2 */
#define LPM2_EXIT _BIC_SR_IRQ(LPM2_bits) /* Exit Low Power Mode 2 */
#define LPM3      _BIS_SR(LPM3_bits)     /* Enter Low Power Mode 3 */
#define LPM3_EXIT _BIC_SR_IRQ(LPM3_bits) /* Exit Low Power Mode 3 */
#define LPM4      _BIS_SR(LPM4_bits)     /* Enter Low Power Mode 4 */
#define LPM4_EXIT _BIC_SR_IRQ(LPM4_bits) /* Exit Low Power Mode 4 */
#endif /* End #defines for C */

 

上一篇:ADC及DA的头文件复析


下一篇:思念是一种美丽的孤独