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

[复制链接]
3488|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了

本帖子中包含更多资源

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

×
john_lee 发表于 2012-8-24 18:16 | 显示全部楼层
内部的10KHz振荡器,需要程序关闭。如果你还开着的话,会耗一些电的。
 楼主| iam80 发表于 2012-8-25 10:28 | 显示全部楼层
谢谢同仁们帮忙:
就算关闭10K时钟电流还是一样4ma.  SYSCLK->PWRCON.OSC10K_EN  = 0
DATA SHEET有说进入后掉电模式后外部时钟自动全部关闭,内部10K,与外部32K除外。
实测工作时,待机时功耗都高出DATA SHEET很多
john_lee 发表于 2012-8-25 10:34 | 显示全部楼层
还有IO呢?如果在掉电前设置不当,也会耗电的。
a_ziliu 发表于 2012-8-27 14:44 | 显示全部楼层
只有留下ic,外部其它器件移除,外部沒有連到ice的話,可以量到10uA
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);
}
liam_lee 发表于 2012-9-4 16:40 | 显示全部楼层
elec921 发表于 2012-9-8 21:05 | 显示全部楼层
每个IO口及其他功能引脚的 上 拉电阻 、 下拉电阻、外设接口 都要走电的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

32

帖子

0

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