1827|0

3836

帖子

19

TA的资源

纯净的硅(中级)

楼主
 

MSP430F5529 系统工作模式 [复制链接]

第四章我们提到可以从电源层入手,达到从源头上控制功耗的目的。这一章   我们就会讲CPU工作模式,如何从次一级来控制功耗。

  不同工作模式下,CPU会禁用一些模块,从而达到控制功耗的目的。

    (PS:同样那句话,“功耗太远”,一般都不会去更改工作模式,所以简单学习)

  简介几句话:

  ①改变工作模式会立即生效;

  ②发生中断时,当前的模式设置信息会被保存,以便恢复(除非中断服务程序中改变了工作模式);

  ③处于LPM4.5模式时,PMM的电源监管不会生效,所有的RAM和寄存器都会丢失,但是I/O口状态会锁定;

  ④从LPM4.5唤醒,有一套专门的流程,有兴趣就去看;

  下面这张图很有意思,可以清楚的看清工作模式之间转换的流程与方向,以及每种工作模式是怎样设置的,又控制了哪些部分。

  BOR: Brown-Out Reset 低电压检测复位(欠压复位)

  POR: Power-On  Reset 上电复位

  PUC: Power-Up Clear  上电清除

  浅色部分表示一个事件,深色部分表示一种操作或设置

  ①设置工作模式主要是设置寄存器SR的SCG0、SCG1、OSCOFF、CPUOFF位,AM(Active Mode)模式时四位均置零,且系统默认为AM模式;

  ②除了AM,其余都为低功耗模式,处理器进入低功耗模式以后,一般由中断来唤醒。可以是外部中断,也可以是内部的定时器等中断;

  ③LPM0-LPM4模式下,外围模块都会正常工作,且RTC时钟不会停止;

  ④要进入LPM4.5这一模式(更少用),只需在LPM4的基础上多一个PMMREGOFF置位。该模式下,系统的所有时钟、内存和监督管理机    制都停了,连实时时钟RTC都禁止操作了。

  ⑤LPM0和LPM1一组,除了上图显示的特征外,该模式下SMCLK是选通的 (SMCLKOFF =0),DCO的时钟源如果是ACLK或者SMCLK,则DCO也是有效的;

  ⑥ LPM2和LPM3一组,除了上图显示的特征外,该模式下SMCLK是禁止的,DCO的时钟源如果是ACLK,则DCO也是有效的;

  ⑦MSP430的头文件对低功耗模式有详尽的定义,如:要进入低功耗模式0,可 在程序中直接写LPM0; 进入低功耗模式4,可以直接写LMP4。退出低功耗模式如下:

LPM0_EXIT; //退出低功耗模式0  //太方便了有木有    LPM4_EXIT; //退出低功耗模式4(LPM4.5除外)

总结实验:一个很有意思的程序

/*低功耗模式的体现,不用无限循环,程序也不会终止*/

/*大家会发现,LPM3后面的语句不会执行,程序只会定期执行一下中断服务程序,这是因为LPM3模式下MCLK和SMCLK、FLL都禁止了*/

#include

void main(void)

{

   WDTCTL=WDTPW+WDTCNTCL+WDTTMSEL+WDTIS1+WDTIS0;//WDT作定时器用

   SFRIE1|=WDTIE;               //开看门狗中断

   P1DIR|=BIT1+BIT2;             //P1.1接LED,设定为输出方向

   P1OUT=BIT1+BIT2;

   __enable_interrupt();         //开总中断

   //_BIS_SR(GIE);  这句话的意思也是开总中断

   /*这里掌握一个用法_BIS_SR( ):将括号内的变量置位*/

   LPM3;                        //进入LPM3低功耗模式,此模式下SMCLK被禁止

   P1OUT&=~BIT2;        //这句话执行不了,所以P1.2就会保持常亮,而不会变暗

}

#pragma vector=WDT_VECTOR

__interrupt void WatchTimer(void)

{

     P1OUT^=BIT1;    //定时翻转,以实现闪烁

}

 
点赞 关注(1)

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

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