430低功耗问题

[复制链接]
1937|22
 楼主| o爱电子 发表于 2016-11-14 13:14 | 显示全部楼层 |阅读模式
BCSCTL1&=~XT2OFF,意思是打开XT2晶振,BCSCTL1&=XT2OFF是不是就是关闭XT2晶振了,在低功耗的之前开启XT2作为时钟源,进入低功耗的时候关闭XT2,为什么这时候功耗依然很大呢,如果在时钟初始化的时候不操作BCSCTL1这个寄存器的话,进入低功耗后电流就非常小,我测试的时候没有任何外设,附上没有操作 BCSCTL1寄存器的时钟设置[img][/img]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
shisizai 发表于 2016-11-15 10:01 | 显示全部楼层
本帖最后由 shisizai 于 2016-11-15 10:04 编辑

SELS   Bit 3   Select SMCLK. This bit selects the SMCLK source.
0 DCOCLK
1 XT2CLK when XT2 oscillator present on-chip. LFXT1CLK when XT2
oscillator not present on-chip.
你把xt2关了之后 SMCLK选的是低频时钟源 32k的那个  但是你要是给xt2开开 就是8M的时钟源了
所以功耗就上去了另外 关闭XT2晶振 是 BCSCTL1 | =XT2OFF

评分

参与人数 1威望 +2 收起 理由
o爱电子 + 2 很给力!

查看全部评分

dirtwillfly 发表于 2016-11-14 13:49 | 显示全部楼层
你的xt2是多少频率的?
你说的功耗很大和非常小,分别是多少?
 楼主| o爱电子 发表于 2016-11-14 14:31 | 显示全部楼层
dirtwillfly 发表于 2016-11-14 13:49
你的xt2是多少频率的?
你说的功耗很大和非常小,分别是多少?

XT2是8M的,如果不操作BSC1那个寄存器的话,进入低功耗后电流2uA,如果操作BSC1的话进入低功耗后电流为还几百uA
dirtwillfly 发表于 2016-11-14 14:46 | 显示全部楼层
o爱电子 发表于 2016-11-14 14:31
XT2是8M的,如果不操作BSC1那个寄存器的话,进入低功耗后电流2uA,如果操作BSC1的话进入低功耗后电流为还 ...

几百uA是正常的,你进入低功耗状态,功耗就能降下来一些
 楼主| o爱电子 发表于 2016-11-14 15:02 | 显示全部楼层
dirtwillfly 发表于 2016-11-14 14:46
几百uA是正常的,你进入低功耗状态,功耗就能降下来一些

如果操作BCSCTL1那个寄存器的话进入低功耗也是几百uA,
dirtwillfly 发表于 2016-11-14 15:52 | 显示全部楼层
o爱电子 发表于 2016-11-14 15:02
如果操作BCSCTL1那个寄存器的话进入低功耗也是几百uA,

不会啊。方便上传下更多代码吗?
 楼主| o爱电子 发表于 2016-11-14 16:00 | 显示全部楼层
部分代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| o爱电子 发表于 2016-11-14 16:02 | 显示全部楼层
dirtwillfly 发表于 2016-11-14 15:52
不会啊。方便上传下更多代码吗?

我把主函数部分,时钟部分,推迟低功耗部分的代码贴楼下了,这部分代码是没有操作BCSCTL1寄存器的,可以正常低功耗的,你看一下,
dirtwillfly 发表于 2016-11-14 16:27 | 显示全部楼层
o爱电子 发表于 2016-11-14 16:02
我把主函数部分,时钟部分,推迟低功耗部分的代码贴楼下了,这部分代码是没有操作BCSCTL1寄存器的,可以 ...

定时器和串口等是不是有使用mckl或者smclk的?
如果有使用的,会造成msp430不能进入LPM3模式
 楼主| o爱电子 发表于 2016-11-14 16:54 | 显示全部楼层
dirtwillfly 发表于 2016-11-14 16:27
定时器和串口等是不是有使用mckl或者smclk的?
如果有使用的,会造成msp430不能进入LPM3模式 ...

那该怎么办啊?我觉的问题应该在时钟设置上,
dirtwillfly 发表于 2016-11-14 17:01 | 显示全部楼层
o爱电子 发表于 2016-11-14 16:54
那该怎么办啊?我觉的问题应该在时钟设置上,

方法一:如果这些内置资源在低功耗模式不需要工作,可以先关闭它们,然后进入低功耗模式。退出低功耗模式记得重新配置他们。
方法二:LPM3模式模式下,MCLK和SMCLK被关闭,但ACLK还在运行状态,配置这些内置资源使用ACLK就可以了。
robter 发表于 2016-11-15 08:17 | 显示全部楼层
没注意到这个问题
 楼主| o爱电子 发表于 2016-11-15 08:40 | 显示全部楼层
dirtwillfly 发表于 2016-11-14 17:01
方法一:如果这些内置资源在低功耗模式不需要工作,可以先关闭它们,然后进入低功耗模式。退出低功耗模式 ...

也就是进低功耗之前,把定时器,串口全部关了再进入低功耗?
 楼主| o爱电子 发表于 2016-11-15 10:39 | 显示全部楼层
shisizai 发表于 2016-11-15 10:01
SELS   Bit 3   Select SMCLK. This bit selects the SMCLK source.
0 DCOCLK
1 XT2CLK when XT2 oscillato ...

谢谢,按照你说的,问题解决了,之前关闭XT2的方法错了,导致进入低功耗后XT2无法关闭,电流大。谢谢啦
 楼主| o爱电子 发表于 2016-11-15 10:40 | 显示全部楼层
dirtwillfly 发表于 2016-11-14 17:01
方法一:如果这些内置资源在低功耗模式不需要工作,可以先关闭它们,然后进入低功耗模式。退出低功耗模式 ...

谢谢啦,问题解决了
Snow7 发表于 2016-11-22 22:07 | 显示全部楼层
LPM3模式模式下,MCLK和SMCLK被关闭,但ACLK还在运行状态
 楼主| o爱电子 发表于 2016-11-23 15:16 | 显示全部楼层
Snow7 发表于 2016-11-22 22:07
LPM3模式模式下,MCLK和SMCLK被关闭,但ACLK还在运行状态

了解了,谢谢啦
shenmu2012 发表于 2016-11-23 22:57 | 显示全部楼层
进入低功耗模式后,一般主频率是暂停掉了,采用SMCLK的
firstblood 发表于 2016-11-23 23:21 | 显示全部楼层
这个主要是针对32.768KHz的晶振操作而言的,有几种低功耗模式下就是由该晶振提供时钟的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

23

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部