[求助] STM32L151低功耗的问题

chenbingjy   2019-4-17 14:43 楼主
1.jpg
我原理图上有一个指示灯,10个按键,一个蓝牙模块。
为了低功耗模式,用一个MOS管切断蓝牙电源。
现在,在切断蓝牙电源的情况下,进入停机模式。
Stop_Mode();
。。。。。。。。。。。。。。。。。。。。。。
void Stop_Mode(void)
{

        /*进入low power mode*/
        LP_Run_Mode();
        RCC->APB1ENR|=1<<28;     //使能电源时钟       

        PWR_VoltageScalingConfig(PWR_VoltageScaling_Range2);//1.5v
         
        PWR->CR &= ~(3<<0);                //清除PDDS 和LPDSR
        PWR->CR |= 1<<0;                //set LPDSR
        /* Set SLEEPDEEP bit of Cortex System Control Register */
        SCB->SCR |= SCB_SCR_SLEEPDEEP;
        RCC->APB1ENR &= ~(1<<28);     /*关闭电源时钟*/       
        __WFI();
        /* Reset SLEEPDEEP bit of Cortex System Control Register */
        SCB->SCR &= (uint32_t)~((uint32_t)SCB_SCR_SLEEPDEEP);         
}

测电流,大概360多uA的样子。
是不是功耗有点大?
还有,进入低功耗以后,貌似运行频率降低了。
这是怎么回事?谢谢!

为江山踏坏了乌骓马,为社稷拉断了宝雕弓。

回复评论 (1)

根据你采用的低功耗模式查器件手册,看是否一致。如果明显超出器件手册所载参数,再查外围和IO配置。
上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2019-4-17 14:46
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复