你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32L151 STOP模式功耗过高

[复制链接]
雪叶龙 提问时间:2019-10-20 14:34 /
咨询下,哪位大神做过stop模式,现在程序电流很大,进入STOP后电流有800UA左右。有经验的能帮忙看下程序哪有问题吗,感激不尽int main(void)
{

    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
    SystemInit();
    RTC_Config();


    //RCC_LSEConfig(RCC_LSE_OFF);
    Led_Init();
    delay_init();
    GPIO_DeInit(GPIOA);
    GPIO_DeInit(GPIOC);
     DisableDBGStopMode();
    COMP_DeInit();
    PWR_PVDCmd(DISABLE);

  /* Add your application code here
     */
     ADC_DeInit(ADC1);
  /* Infinite loop */
  while (1)
  {
     /* Enable Wakeup Counter */
    RTC_WakeUpCmd(ENABLE);
    gpio_lowpower_fun();

    /* Enter Stop Mode */
    PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI);
}
}


进入低功耗前调用函数
void gpio_lowpower_fun(void)
{
        GPIO_InitTypeDef GPIO_InitStructure;
       
    RCC_AHBPeriphResetCmd(RCC_AHBPeriph_GPIOA, ENABLE);
        RCC_AHBPeriphResetCmd(RCC_AHBPeriph_GPIOB, ENABLE);
        RCC_AHBPeriphResetCmd(RCC_AHBPeriph_GPIOC, ENABLE);
    RCC_AHBPeriphResetCmd(RCC_AHBPeriph_GPIOD, ENABLE);

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_400KHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
        GPIO_InitStructure.GPIO_OType = GPIO_OType_OD;       
        GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN;
       
        GPIO_Init(GPIOA, &GPIO_InitStructure);
        GPIO_Init(GPIOB, &GPIO_InitStructure);
        GPIO_Init(GPIOC, &GPIO_InitStructure);
    GPIO_Init(GPIOD, &GPIO_InitStructure);

    RCC_AHBPeriphResetCmd(RCC_AHBPeriph_GPIOA, DISABLE);
        RCC_AHBPeriphResetCmd(RCC_AHBPeriph_GPIOB, DISABLE);
        RCC_AHBPeriphResetCmd(RCC_AHBPeriph_GPIOC, DISABLE);
    RCC_AHBPeriphResetCmd(RCC_AHBPeriph_GPIOD, DISABLE);
}


STM32L151.rar

下载

325.34 KB, 下载次数: 13, 下载积分: ST金币 -1

收藏 评论3 发布时间:2019-10-20 14:34

举报

3个回答
freeelectron 回答时间:2019-10-21 09:29:08
1、800uA,说明mcu已经进入了休眠;
2、看硬件电路,比如LDO或者DCDC芯片的功耗;
3、看看有没有遗漏的IO口,进入休眠的时候没有设置,从而导致了漏电。

评分

参与人数 1蝴蝶豆 +4 收起 理由
STMCU + 4

查看全部评分

大陶 回答时间:2019-10-21 09:36:22
看看IO口的 将不用的IO都变成模拟输入模式
butterflyspring 回答时间:2019-10-30 17:35:04
用官方的例程,注意外部电路的配置。对比看看。如果代码一样,那就要看你电路的连接方式了。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版