92|0

3526

帖子

0

资源

纯净的硅(初级)

MSP430--低功耗模式

1.CPU的结构:16个寄存器R0-R15,16位算数逻辑单元ALU和一个指令控制单元。

2.寄存器中R4-R15是通用寄存器没有特殊功能。

  R0-R3具有特殊性:

  R0:程序计数器PC(Program counter),存放着下一条要从程序存储器中取出的指令的地址。

  R1:堆栈指针SP(Stack Point),系统堆栈在系统调用子函数或者进入中断服务程序时,保护程序计数器PC。

  R2:状态寄存器SR(State Register):

  R3:常数发生器

3.状态寄存器SR

image.png

4.低功耗

不同的低功耗模式就是配置不同的SCG1,SCG0,OscOff,CPUOff.

SCG1:复位使能SMCLK,置位则禁止SMCLK.

SCG0:复位激活DCO,置位且DCOCLK不用于MCLK或SMCLK时禁止DCO。

OscOff:复位则LFXT激活,置位且LFXT不用于MCLK或SMCLK时,LFXT振荡器禁止--对应着ACLK。

CPUOff:复位则MCLK激活,置位则MCLK停止。

解释:

(1)POR:POWER ON RESET.上电或复位信号都可以发生POR。

   PUC:POWER UP CLEAR.POR可以出发PUC,另外看门狗的事件可以出发PUC。

(2)AM:全部活动

   LPM0:CPUOFF=1,CPU被禁止,即MCLK被禁止。

   LPM1:CPUOFF=1,SCG0=1。CPU-MCLK禁止,且若DCO未用做MCLK或SMCLK,则DCO禁止。

   LPM2:CPUOFF=1,SCG1=1。CPU-MCLK禁止,SMCLK禁止。(DCO未用作MCLK,SMCLK则自动禁止)

   LPM3:CPUOFF=1,SCG1=1,SCG0=1.CPU-MCLK禁止,SMCLK禁止,DCO禁止。

   LPM4:CPUOFF=1,SCG1=1,SCG0=1,OSCOFF=1.全部禁止,包括ACLK也禁止。

5.系统工作原理:单片机各个模块运行完全独立。定时器,IO,AD,看门狗等都可以在主CPU休眠的状态下独立运行。

  软件将CPU设定到某一低功耗工作模式下,在需要时使用中断将CPU从休眠状态中唤醒,完成工作后又进入相应的休眠状态。

  系统响应中断的过程:如果在中断处理子程序中修改堆栈中SR的状态,那么中断返回后将不再是原来的SR状态。

    PC入栈,SR入栈。

    中断向量赋给PC。

    GIE,CPUOFF,OSCOFF,SCG1清除。

    IFG标志位清除.

 执行中断处理子程序。

 执行RETI指令,中断返回。

    SR出栈

    PC出栈

void main(void)
{
  BCSCTL1 |= DIVA_2;//ACLK 4分频:由LFXT1CLK提供(32kHZ)
  WDTCTL = WDT_ADLY_1000; //WDT作为间隔定时器:8000ms
  IE1 |= WDTIE;
  while(1)
  {
    unsigned int i;
    _BIS_SR(LPM3_bits+GIE);//设置SR寄存器,进入LPM3,打开全局中断
  }  
}


进入LPM3:SCG1+SCG0+CPUOFF:也就是只有ACLK是活动的,但是仍支持WDT,TIMER.

编译器支持直接对位赋值:_intrinsic unsigned short _BIS_SR(unsigned short),位于in430.h

同理要清除SR中某一位的话就用 _BIC_SR();


回复
您需要登录后才可以回帖 登录 | 注册

关闭
站长推荐上一条 1/7 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表