[讨论] 我的STM32L151C8T6的功耗为什么降不下来呢,谢谢

】欧阳   2017-3-16 11:18 楼主
void sleep(void)
{
                GPIO_InitTypeDef GPIO_InitStructure;
    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);

    /* config all IO to Analog Input to reduce parasite power consumption */

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12;

    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_400KHz;

    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;

    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;

    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN;

    GPIO_Init(GPIOA, &GPIO_InitStructure);
       
                RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
                GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11| GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;
                GPIO_InitStructure.GPIO_Speed = GPIO_Speed_400KHz;

    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;

    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;

    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN;

    GPIO_Init(GPIOB, &GPIO_InitStructure);  

    /* Enable PB7 as external PVD input so as to set it as AIN_IN */
    Set_PVD_To_Config_PB7();

    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA| RCC_AHBPeriph_GPIOB, DISABLE);

    PWR_UltraLowPowerCmd(ENABLE);
   PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI);
}       

void Set_PVD_To_Config_PB7(void)
{
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);

  /* Configure the PVD Level to 3 (2.5V) */
  PWR_PVDLevelConfig(PWR_PVDLevel_7);

  /* Enable the PVD Output */
  PWR_PVDCmd(ENABLE);  
}


回复评论 (2)

现在是2.8ma 还有那些可以关闭?降到500Ua就可以?谢谢各位各位大神
点赞  2017-3-16 11:33
你看看手册,STOPMode下,功耗是多少啊。你的实际情况要是符合手册参数,就没问题啊。要是高得话,再看是不是还有什么配置能改。功耗要求严格的话,430更好一些。
点赞  2017-3-16 21:07
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复