原创 [博客大赛]MSP430学习笔记_低功耗事件驱动工作模式

2013-5-17 09:58 2547 11 13 分类: MCU/ 嵌入式

                                           MSP430的低功耗事件驱动工作模式

MSP430系列单片机的各个模块都可以独立运行,如定时器、输入/输出端口、A/D转换、看门狗、液晶显示器等都可以在CPU休眠的状态下独立工作。若需要主CPU工作,任何一个模块都可以通过中断唤醒CPU,从而使系统以最低功耗运行。

      让CPU工作于突发状态可以充分利用CPU的低功耗性能。通常,使用软件将CPU设定到某一低功耗模式,在需要时使用中断将CPU从休眠状态中唤醒,完成工作后又可以进入相应的休眠状态。如:让CPU工作在LPM3状态,通过中断事件转换到AM活动模式,根据运行需要,又可以从AM状态进入相应的低功耗模式:LPM0/LPM3或LPM4。

      系统的这些低功耗特性是靠系统对中断的响应来实现的。系统响应中断的过程:(1)硬件自动中断服务。包括PC入栈、SR入栈;中断向量赋给PC;GIE、CPUOFF、OSCOFF和SCG1清除;以及IFG标志位清除(单源中断标志)。(2)执行中断处理子程序。(3)执行RETI指令(中断返回),包括SR出栈;PC出栈。

     例如:系统初始化完成后工作于低功耗模式0,中断事件触发到活动模式,中断处理结束后进入低功耗模式3。

;主程序

……;初始化操作开始

……;

……;初始化结束

BIS  #GIE+CPUOFF, SR ; 主程序中设置低功耗模式0,LPM0

;……;程序在这里停止

;中断子程序

……

……; 中断处理结束

BIS  #GIE+CPUOFF+SCG1+SCG0, 0(SP) ; 设置SR为低功耗模式3,LPM3

RETI; 中断返回

;系统进入低功耗模式3

……

    如果主程序期待在中断返回之后继续执行某些操作,可以在中断处理子程序中改变SR的值为AM模式,系统中断退出后根据恢复的SR和PC的值,来执行设定的某些操作。

;主程序

……;初始化操作开始

……;

……;初始化结束

BIS  #GIE+CPUOFF, SR ; 主程序中设置低功耗模式0,LPM0

L1     操作1

L2     操作2

……;

;中断子程序

…… ;中断处理开始

……

……; 中断处理结束

BIS  #GIE+CPUOFF, 0(SP) ; 设置SR为活动模式,AM

RETI; 中断返回,系统进入活动模式

……

     主程序执行到LPM0处停止执行,L1,L2等语句不执行。之后中断事件保存PC(L1指令地址)和SR(低功耗模式0),中断唤醒CPU,执行中断处理程序;由于在中断处理子程序中将SR设置为活动模式,所以中断返回后CPU处于活动状态,并从PC指向的L1指令处开始继续执行…… 。

PARTNER CONTENT

文章评论2条评论)

登录后参与讨论

用户1724555 2014-12-16 14:46

ok

chen_zs2012_704941858 2013-5-17 10:09

哦,好的。:)

用户403664 2013-5-17 09:59

兄弟,以后原创文章自己都在标题加上[博客大赛]吧!
相关推荐阅读
chen_zs2012_704941858 2014-03-19 17:49
学习LabVIEW要记住的几句话
学习LabVIEW要记住的几句话1. LabVIEW是门程序设计语言,不是画图工具!2. 不要以为LabVIEW很简单,设计个庞大工程难度不亚于C++!3. 语言本身永远只是招式,请注意修炼内功:数据...
chen_zs2012_704941858 2014-01-24 23:46
【博客大赛】易络盟-飞思卡尔MCU大赛_KL25Z
【博客大赛】易络盟-飞思卡尔MCU大赛    Element14、Embest、Freescale三方联合推出的FRDM-KL...
chen_zs2012_704941858 2014-01-24 23:20
《深入理解Altera FPGA 应用设计》赠书已到,感谢EDNChina和coyoo博主
《深入理解Altera FPGA 应用设计》赠书已到,感谢EDNChina和coyoo博主         //深圳 ...
chen_zs2012_704941858 2014-01-20 20:08
【博客大赛】单片机软件抗干扰的几种常见方法
【博客大赛】单片机软件抗干扰的几种常见方法       在提高硬件系统抗干扰能力的同时,软件抗干扰以其设计灵活、节省硬件资源、可靠性好越来越受到重视。下面以MCS-51单片机系统为例,...
chen_zs2012_704941858 2014-01-19 21:19
【博客大赛】说说单片机、PSOC、FPGA之间的主要区别
【博客大赛】说说单片机、PSOC、FPGA之间的主要区别   现在的单片机一般是mcu+有限的固定的模拟或数字外围;FPGA是可编程数字外围电路;PSoC 相当于MCU+可编程模拟外围电路...
chen_zs2012_704941858 2014-01-19 16:13
你知道你的个人隐私在互联网上有多么的多不堪一击吗?
你知道你的个人隐私在互联网上有多么的多不堪一击吗?     //听着就恐怖,看着就可怕!我已经开始清理我在互联网的个人隐私了,你呢?   最近我废弃了两个加起来用了十几年的QQ...
我要评论
2
11
关闭 站长推荐上一条 /3 下一条