首页 热点资讯 义务教育 高等教育 出国留学 考研考公

msp430各种低功耗模式有什么区别

发布网友 发布时间:2022-04-22 06:05

我来回答

1个回答

热心网友 时间:2023-09-30 00:54

单片机中,功耗最低的单片机要MSP430单片机,这是做手持设备最优选择,MSP430中,用到5种低功耗,LPM0,LPM1,LPM2,LPM3,LPM4,这五种低功耗各种解释如下 :

  CPU的活动状态称为AM(ACTVE MODE)模式。其中AM耗电最大,LPM4耗电最省,仅为0.1uA。另外工作电压对功耗的影响:电压越低功耗也越低。 系统PUC复位后,MSP430进入AM状态。在AM状态,程序可以选择进入任何一种低功耗模式,然后在适当的条件下,由外围模块的中断使CPU退出低功耗模式,返回AM模式,再由AM模式选择进入相应的低功耗模式,如此类推。
CPU的结构:16个寄存器R0-R15,16位算数逻辑单元ALU和一个指令控制单元。

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

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

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

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

  R3:常数发生器

  状态寄存器SR
工作模式的选择由状态寄存器SR中的SCG1、SCG0、OSCOFF、CPUOFF位控制。由于在CPU的头文件中对CPU内的各寄存器和模块的各种工作模式都作了详尽的定义,所以编程时尽可能的利用就是了。如:要进入低功耗模式0,可在程序中直接写:LPM0; 。进入低功耗模式4,可以写:LMP4;就可以了。退出低功耗模式如下:

  LPM0_EXIT; //退出低功耗模式0

  LPM4_EXIT; //退出低功耗模式4

  LPM0:CPU停止工作,MCLK时钟停止,SMCLK、ACLK时钟还在工作。

  LPM1:CPU停止工作,MCLK时钟停止,在活动模式如果DCO没有作为MCLK和SMCLK时钟时,则直流发生器被禁止,否则就保持活动状态,SMCLK、ACLK时钟依然还在工作。

  LPM2:CPU停止工作,MCLK、SMCLK时钟停止工作,如果DCO没有作为MCLK、SMCLK,自动被禁止直流发生器保持有效,ACLK还处于工作中。

  LPM3:CPU停止工作,MCLK、SMCLK时钟停止工作,DCO时钟也停止工作,仅ACLK时钟还处于工作状态。

  LPM4:CPU停止工作,MCLK、SMCLK时钟停止工作,DCO时钟也停止工作,ACLK也停止工作。此时功耗最低。

  一般情况下,处理器进入低功耗模式后,由中断来唤醒,外部中断或内部中断。

  如果想进入低功耗1,则程序可以为:_BIS_SR(LPM1_bits + GIE);退出低功耗1,则程序可以为:LPM1_EXIT; 进入其他低功耗和退出低功耗一样。

  低功耗执行的一个过程:程序从main函数入口开始执行程序,当遇到进入低功耗程序时,如:_BIS_SR(LPM1_bits + GIE);此时相当于下面的程序处于停止状态不再执行,当有一个中断来到,则会进入中断处理程序,自动退出低功耗,如果在中断中没有没有退出低功耗,当中断服务程序执行完成后,又会重新进入低功耗。

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

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

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

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

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

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com