6453|12

47

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

用Launchpad将低功耗进行到底! [复制链接]

  自打第一天接触430系列开始,430低功耗一直是深深地留在我的印象里,每当工作中要求功耗比较严格时,MSP430一直是偶考虑的首选。更让偶惊叹的是看到丁工讲的Launchpad视频教程时,用苹果串起来对控制液晶显示模块供电(偶猜测它的主控芯片是L092系列的,因为这个系列的供电只有0.9v),让偶对低功耗的充满着一片想象。现在我从以下几个方面来讲我眼中的430为什么会那么低功耗(比如一颗纽扣电池能用10年之久)。

  首先用同一标准来衡量430。自己算计系统中通常采用W/MIPS来衡量处理器的功耗与性能关系的。我们大部分人都用过x86结构的51,它是CICS架构,使用的是集中指令,通俗的讲,就是它内部通过硬件实现了很多特殊的功能,我们通过CICS,简单几句就可以完成对数据的操作存储,CICS架构的功耗普遍不会很低,我记得去年做的一个项目中,用了ST的芯片,用公司的内部仪器测试了它全速运行的动态电流,基本上到达了15mA/MIPS。而采用RICS架构的单片机则有MSP430MICROCHIP(不好意思,到现在为止,我只接触过这两种RICS架构的mcu,如果还有其他单片机也是这个架构的,希望跟帖回复,有网友说了M0的),去年年底的时候,microchip公司发布了PIC24F列的某款芯片,官网介绍说它在全速运行时达到了150uA/MHZ,而TIFRAM则是低于110uA/MHZ,据官网上的说法是这个月供货的以MSP430FR58xx系列金刚狼MCU到达了有可能更低的功耗,可以说MSP430的功耗平台确实无人能及。偶在不断惊叹的同时,也是不断对TI的崇拜。

  上面采用了对架构,功耗与性能之比对mcu进行了分析。现在对内部硬件模块进行分析。由于msp430具有不同模块,疑问?MSP430为什么会有不同模块,因为在这个模拟量的现实世界中,存在着不同频率的信号,有高至很高的,也有底至很低的。在mcu与外部接口中,大部分的信号相对cpuram的存取与读写信号来说是低速信号,由于速度越高,需要的电流越大,功耗越大。所以在单片机中不需要以同样高的速度给外围接口提供时钟,这没必要,也是浪费,在功耗要求很严格的地方这也是致命伤,这时就出现了时钟分频,给不同模块,提供不同时钟,甚至不工作的模块可以停止掉,对于无时不刻都在运行的mcu来讲这就省下了很多的能源了,所以请不要小看低功耗,这个将成为未来评价单片机的重要参数。如果还不是很清楚,不同的时钟信号,我可以举个通俗的例子,比如我们的电脑主板,主板上三大用电大户,大家应该知道吧,用电大小依次从大到小排列,cpu,北桥,南桥。我们可以把cpu比喻成皇帝,北桥比喻成各个吏部,而南桥比喻成各个衙门,皇帝是不会与衙门打交道,一般都是通过各个吏部来处理事情的,cpu也基本上很少和南桥打交道的,cpu 是和北桥打交道的,cpu都是通过北桥来间接处理时间的,这就对cpu起到了一个隔离的保护,因为它能处理更多更复杂的事情,如果你让它给你处理检测键盘按键的功能,那实在是太浪费这里的cpu了,这里的cpu根本不是这块料(就像皇帝都不直接给人民办好事)。吏部主要做些什么,在主板中处理高速信号,比如,ddr的读写,显卡的操作,再就是与cpu进行通信,与cpu主要讲这些事情,显卡怎么读,送多少东西给显卡,显卡现在运行到了什么状态,内存从哪里开始,是读还是写,这个结果放到哪里去等等,提供给它们的信号就是高速的,因为它们能在同一个频率对话,也就是它们为什么用电这么大的原因,南桥主要处理开关机电路,键盘,usb,鼠标等相对于cpu和北桥信号的低速信号。南桥衙门就每天设立在哪里,看看每天有谁谁告状,简单的偷鸡摸狗的事,该打的打,改关的关,一般能处理掉。实在处理不了的交给吏部,吏部解决不了的再给皇上,如果衙门直接交给皇上,这就叫跨级上奏,大部分都要死翘翘了。所以虽然cpu很厉害但它是不直接管南桥的。因此在主板上,经常看到cpu散热时加个风扇,北桥就加个大型散热片,南桥则用小型的散热片,甚至看到过有的南桥直接裸露在外面。

  接下来的问题是,我们拥有了这么低的低功耗平台,作为使用者,我们有权利也有这个义务将这个低功耗发挥到极致。丁工在视频中讲过,msp430中有5个低功耗等级,但常用的是LPM0,LPM3LPM4.LMP1LPM0相近,LPM2LPM3相近,他俩不常用,常用其他等级的低功耗模式代替了。下面我通过Launchpad板,对LED1的闪烁进行低功耗编制如下:

#include <msp430g2553.h>

 void main(void)

{

int i ;

BCSTL1 != DIVA_1;            //ACLK/2

BCSTL3 ! =LFXT1S_2;            //ACLK = VLO

WDTCTL = WD_ADLY_1000; //看门狗工作于定时器模式

IE1 != WDTIE;                    //看门狗中断允许

P1DIR = 0XFF;                    //设置Led1为输出

P1OUT != 0X01;                  //驱动输出高电平

while(1)

{

P1OUT = ~P1OUT;              //灯状态取反

for(i = 1000;i > 0;i--)

{

}

_BIS_SR(LPM3_bits + GIE);         //进入LPM3AClk活动的

}

#pragma vector = WDT_VECTOR //看门狗中断处理

__interrupt void watchdog_timer(void)

{

_BIC_SR_IRQ(LPM3_bits);                //清除LPM3,唤醒cpu

}

 

第一次的新发帖,如果写的不好与错误的地方,站内短信通知我,我将尽快修改,以免误导其他读者,谢谢。

[ 本帖最后由 lw3968 于 2012-6-26 17:30 编辑 ]

用Launchpad将低功耗进行到底.pdf

124.16 KB, 下载次数: 72

Launchpad 低功耗 pdf

最新回复

怎么一编译全是错误 啊!!!我拿iar编译的   详情 回复 发表于 2012-7-18 17:26

点评

支持原创~:kiss:  详情 回复 发表于 2012-6-24 17:49

赞赏

1

查看全部赞赏

 
点赞 关注

回复
举报

437

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 

回复 楼主 lw3968 的帖子

支持原创~
 
个人签名
 

回复

20

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
写得不错!支持!
 
 
 

回复

7219

帖子

195

TA的资源

五彩晶圆(高级)

4
 
楼主对内部结构很有研究啊
 
 
 

回复

327

帖子

0

TA的资源

纯净的硅(高级)

5
 
很酷的分析!
430的低功耗做的的确很好,不过M0的W/MIPS会更低一些,毕竟32位+流水线,但是和430比唤醒速度、BOR功耗等等还是430更出色,各有所长啦。
ps,代码中的循环延迟用定时器会更省电一些,不过在LED功率远超MCU功率时意义不大。

点评

M0的 关注不久,它的功耗确实很诱惑人的,就等有机会给已经成熟的东西升级,:congratulate:  详情 回复 发表于 2012-6-26 10:37
 
个人签名Python全文搜索引擎:<url>http://code.google.com/p/ming-search/</url>
 
 

回复

47

帖子

0

TA的资源

一粒金砂(中级)

6
 

回复 5楼 elulis 的帖子

M0的 关注不久,它的功耗确实很诱惑人的,就等有机会给已经成熟的东西升级,
 
 
 

回复

13

帖子

0

TA的资源

一粒金砂(中级)

7
 
楼主分析的不错,经验也很丰富
 
 
 

回复

973

帖子

15

TA的资源

纯净的硅(高级)

8
 
哈哈,支持一下
 
 
 

回复

157

帖子

0

TA的资源

一粒金砂(高级)

9
 
avr 也是risc的
哈佛结构的
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(中级)

10
 
顶你
 
 
 

回复

294

帖子

1

TA的资源

纯净的硅(高级)

11
 
很精彩的文章,多谢分享
 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

12
 
怎么一编译全是错误 啊!!!我拿iar编译的

点评

第一我贴出的是部分源码,我在帖子中讲了。还有就是我用的是ccs3.1的版本。 所以不要随便复制黏贴代码,主要的是理解就好。  详情 回复 发表于 2012-7-19 08:06
 
 
 

回复

47

帖子

0

TA的资源

一粒金砂(中级)

13
 

回复 12楼 yushuijing 的帖子

第一我贴出的是部分源码,我在帖子中讲了。还有就是我用的是ccs3.1的版本。
所以不要随便复制黏贴代码,主要的是理解就好。
 
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表