打印
[NUC120]

NUC120进入掉电模试(深度睡眠后)电流还有4MA

[复制链接]
2670|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
iam80|  楼主 | 2012-8-24 12:03 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hotpower 于 2012-9-13 22:35 编辑

原码如下:系统使用50MHZ时钟,电流在40ma。定时30秒后进入掉电模试。进入后测量电流还有4ma。进入掉电模试后不能自动关闭要软件关闭外部时钟,否则电流在22ma)。采用官方120开发板测试,断开LED指示灯。

有用过掉电模试的同仁指点下问题出在哪里。

void Enter_PowerDown_Mode(void)
{

UNLOCKREG();
FMC->FATCON.FPSEN = 1;
DrvSYS_Delay(1000);
SYSCLK->;PWRCON.PWR_DOWN_EN  = 1;  
SYSCLK->;PWRCON.PD_WAIT_CPU  = 1;
DrvSYS_Delay(1000);
__WFI();   
SYSCLK->;PWRCON.XTL12M_EN  = 0;  //不运行这句,不能关闭外部12M时钟
FMC->FATCON.FPSEN = 0;
DrvSYS_Delay(1000);
LOCKREG();   
}

相关帖子

沙发
john_lee| | 2012-8-24 12:52 | 只看该作者
要先写SYSCLK->PWRCON.PD_WAIT_CPU  = 1;
然后再写SYSCLK->PWRCON.PWR_DOWN_EN  = 1;

使用特权

评论回复
板凳
iam80|  楼主 | 2012-8-24 13:57 | 只看该作者
更改后还相差不大3.1MA

使用特权

评论回复
地板
ederdan| | 2012-8-24 15:53 | 只看该作者
话说datasheet上面写掉电模式到uA了

未命名.JPG (70.14 KB )

未命名.JPG

使用特权

评论回复
5
john_lee| | 2012-8-24 18:16 | 只看该作者
内部的10KHz振荡器,需要程序关闭。如果你还开着的话,会耗一些电的。

使用特权

评论回复
6
iam80|  楼主 | 2012-8-25 10:28 | 只看该作者
谢谢同仁们帮忙:
就算关闭10K时钟电流还是一样4ma.  SYSCLK->PWRCON.OSC10K_EN  = 0
DATA SHEET有说进入后掉电模式后外部时钟自动全部关闭,内部10K,与外部32K除外。
实测工作时,待机时功耗都高出DATA SHEET很多

使用特权

评论回复
7
john_lee| | 2012-8-25 10:34 | 只看该作者
还有IO呢?如果在掉电前设置不当,也会耗电的。

使用特权

评论回复
8
a_ziliu| | 2012-8-27 14:44 | 只看该作者
只有留下ic,外部其它器件移除,外部沒有連到ice的話,可以量到10uA

使用特权

评论回复
9
T.kami| | 2012-8-27 14:54 | 只看该作者
把NUC120從ICE上頭移開,重新上電就看到uA級了

int        main (void)
{
        //----------------------------------------
        //- Init_System_Clock
        //----------------------------------------
        UNLOCKREG();

        //HCLK Clock Divide Number:        HCLK_N + 1
        CLK->CLKDIV_BITS.HCLK_N = 0;                                        //HCLK Clock Divide Number
        while(CLK->CLKSTATUS_BITS.CLK_SW_FAIL != 0);        //Wait if target switch clock source is not stable
        //----------------------------
        //- Power Down Test
        //----------------------------
        switch(3)
        {
                case 1:                //Normal Run
                        while(1);
                        break;

                case 2:                //Idle

                        //Enter Idle Setting
                //        SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk;        //Eanble M0 to enter deep sleep
                //        DrvSYS_EnterPowerDown(0);                        //Set system to enter power down after CPU idle
                        __WFI();                                                        //Wait WFI, and enter Power-Down
                        break;

                case 3:                //Power-Down

                        //Enter Power-Down Setting
                        SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk;        //Eanble M0 to enter deep sleep
                        DrvSYS_EnterPowerDown(0);                        //Set system to enter power down after CPU idle
                        __WFI();                                                        //Wait WFI, and enter Power-Down
                        break;
        }
        while(1);
}

使用特权

评论回复
10
liam_lee| | 2012-9-4 16:40 | 只看该作者

使用特权

评论回复
11
elec921| | 2012-9-8 21:05 | 只看该作者
每个IO口及其他功能引脚的 上 拉电阻 、 下拉电阻、外设接口 都要走电的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

32

帖子

0

粉丝