4636|7

78

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

MSP430F5418的低功耗真的耗电2-3uA吗? [复制链接]

我最近使用MSP430F5418发现即使程序刚开始运行就进入LPM3,我三伏的供电也耗电300多uA。 程序就是找到的一个例子如下:
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer

P1DIR = 0xFF; P2DIR = 0xFF; P3DIR = 0xFF; P4DIR = 0xFF; P5DIR = 0xFF;
P6IR = 0xFF; P7DIR = 0xFF;P8DIR = 0xFF;P9DIR = 0xFF;P10DIR = 0xFF;P11DIR = 0xFF;
P1OUT = 0x00;P2OUT = 0x00;P3OUT = 0x00;P4OUT = 0x00;P5OUT = 0x00;P6OUT = 0x00; P7OUT = 0x00;P8OUT = 0x00;P9OUT = 0x00;P10OUT = 0x00;P11OUT = 0x00;

LPM3; // Enter LPM3
while (1);
}

这是为什么呢?

最新回复

要想实现真正意思上的低功耗在进入LPM3之前应当关闭所有已经打开的功能模块。比如串口,定时器,AD等。再就是要把所有I/O的特殊功能关闭,设置成输出,输出值为低。否则是不会达到说明书上所给的低功耗指标。比如LPM3电流2uA。我在初始化时使用了定时器A, AD12, 两个串口。为了保持MSP430F5418的RTC在纽扣电池供电时继续工作。在进入LPM3前我是这样做的: void turnOFF() {   TA1CTL = 0;     // stop TimerA   ADC12CTL0 = 0;  // stop ADC12   UCA0CTL1 |= UCSWRST;      UCA1CTL1 |= UCSWRST;      P1SEL = P2SEL = P3SEL = P4SEL = P5SEL = P6SEL = P7SEL = P8SEL = P9SEL = P10SEL = P11SEL = 0;   P1DS = P2DS = P3DS = P4DS = P5DS = P6DS = P7DS = P8DS = P9DS = P10DS = P11DS = 0;   P1DIR = P2DIR = P3DIR = P4DIR =  P5DIR =  P6DIR = P7DIR = P8DIR = P9DIR = P10DIR = P11DIR = 0xFF;   P1OUT = P2OUT = P3OUT = P4OUT =  P5OUT =  P6OUT = P7OUT = P8OUT = P9OUT = P10OUT = P11OUT = 0x00;   P1DIR &= ~BIT4;   //P1.4 input pin   P1IE  |=  BIT4;   //P1.4 interrupt ena××e   P1IES &= ~BIT4;   //P1.4 low-to-high edge   LPM3;                          //MSP430F5418 standby } 经测量。此时单片机在3V钮扣电池供电的情况下为6个uA  详情 回复 发表于 2009-5-15 19:23
 
点赞 关注

回复
举报

66

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
不太清楚,,开什么了。或是其他元件造成的漏电。
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
把其它元件的功耗除掉再试试看!
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

4
 
程序看来没问题,还是外围电路的事
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

5
 
具体看数据手册中,看看LPM3下,不同条件下的测试的电流
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

6
 
对不起。上次我的程序没有说全。我在进入LPM3之前还初始化了定时器A和两个串口。今天我又捣鼓了一下。发现如果不初始化定时器A和两个串口,LPM3的电流消耗是6.5个uA。虽然还没有达到资料上说的2uA,但已经很不错了。至于在进入LPM3之前如何设置定时器A和两个串口才能保持不大于6.5个uA的功耗还在继续探讨。
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

7
 
继续努力。把试验结果和大家分享一下。。
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

8
 

重大发现

要想实现真正意思上的低功耗在进入LPM3之前应当关闭所有已经打开的功能模块。比如串口,定时器,AD等。再就是要把所有I/O的特殊功能关闭,设置成输出,输出值为低。否则是不会达到说明书上所给的低功耗指标。比如LPM3电流2uA。我在初始化时使用了定时器A, AD12, 两个串口。为了保持MSP430F5418的RTC在纽扣电池供电时继续工作。在进入LPM3前我是这样做的:
void turnOFF()
{
TA1CTL = 0; // stop TimerA
ADC12CTL0 = 0; // stop ADC12
UCA0CTL1 |= UCSWRST;
UCA1CTL1 |= UCSWRST;
P1SEL = P2SEL = P3SEL = P4SEL = P5SEL = P6SEL = P7SEL = P8SEL = P9SEL = P10SEL = P11SEL = 0;
P1DS = P2DS = P3DS = P4DS = P5DS = P6DS = P7DS = P8DS = P9DS = P10DS = P11DS = 0;
P1DIR = P2DIR = P3DIR = P4DIR = P5DIR = P6DIR = P7DIR = P8DIR = P9DIR = P10DIR = P11DIR = 0xFF;
P1OUT = P2OUT = P3OUT = P4OUT = P5OUT = P6OUT = P7OUT = P8OUT = P9OUT = P10OUT = P11OUT = 0x00;
P1DIR &= ~BIT4; //P1.4 input pin
P1IE |= BIT4; //P1.4 interrupt ena××e
P1IES &= ~BIT4; //P1.4 low-to-high edge
LPM3; //MSP430F5418 standby
}

经测量。此时单片机在3V钮扣电池供电的情况下为6个uA
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

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