打印
[STM32L1]

急急急求,stml151低功耗问题,电流下不来,高手指点

[复制链接]
1570|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
joneming|  楼主 | 2015-10-23 14:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 joneming 于 2015-10-23 14:41 编辑

大家好,我用空板单CPU调试stml151低功耗,
正常启动
电流都是0.44uA
但我多次按复位键时(多数电流都是0.44uA)
偶尔出现一次电流为1.4到1.5mA的情况,
之后不管我怎么按复位键电流都回不到0.44uA的情况了(但按复位键程序都可以正常复位)
只能断电,重新上电之后才能回到0.44uA的情况
是什么原因呢??

/***********************************************************************/
int main(void)
{
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
    while (1)
    {
        GPIO_InitTypeDef GPIO_InitStructure;   
        RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA|RCC_AHBPeriph_GPIOB|RCC_AHBPeriph_GPIOC|RCC_AHBPeriph_GPIOD|RCC_AHBPeriph_GPIOE|RCC_AHBPeriph_GPIOH, ENABLE);
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
        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);
        GPIO_Init(GPIOB, &GPIO_InitStructure);
        GPIO_Init(GPIOC, &GPIO_InitStructure);
        GPIO_Init(GPIOD, &GPIO_InitStructure);
        GPIO_Init(GPIOE, &GPIO_InitStructure);
        GPIO_Init(GPIOH, &GPIO_InitStructure);  
        PWR_UltraLowPowerCmd(ENABLE);   
        /* Enter Stop Mode */
        PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI);
    }
}
沙发
crystal1987| | 2015-10-23 14:40 | 只看该作者
理论上系统中不需要的资源都关掉。你把不用的IO使能都关掉,可能功耗会降低点。

使用特权

评论回复
板凳
joneming|  楼主 | 2015-10-23 14:43 | 只看该作者
你没看清楚我说的问题,,
我多次按复位键时(多数电流都是0.44uA)
偶尔出现一次电流为1.4到1.5mA的情况,
1.5mA好大了,不是uA
而且之后不管我怎么按复位键电流都回不到0.44uA的情况了(但按复位键程序都可以正常复位)
只能断电,重新上电之后才能回到0.44uA的情况

使用特权

评论回复
地板
songchenping| | 2015-10-23 15:03 | 只看该作者
可能是你按复位键的问题啊。

使用特权

评论回复
5
lwsn| | 2015-10-23 15:29 | 只看该作者
出现1.5mA时,程序运行还正常吗

使用特权

评论回复
6
joneming|  楼主 | 2015-10-23 16:09 | 只看该作者
出现1.5mA时,程序运行还正常吗
还可以正常运行,复位也可以
我在while(1)前打印输出都有效

使用特权

评论回复
7
joneming|  楼主 | 2015-10-23 16:11 | 只看该作者
songchenping 发表于 2015-10-23 15:03
可能是你按复位键的问题啊。

换N个板都一样,拿示波器看复位波形也很好,一点干扰都没有

使用特权

评论回复
8
joneming|  楼主 | 2015-10-23 16:12 | 只看该作者
lwsn 发表于 2015-10-23 15:29
出现1.5mA时,程序运行还正常吗

还可以正常运行,复位也可以
我在while(1)前打印输出都有效

使用特权

评论回复
9
309030106| | 2015-10-25 17:56 | 只看该作者
出现1.4到1.5mA的情况之后,是不是这个电流就降不下来了,一直都这么大

使用特权

评论回复
10
FireRiver9| | 2015-10-25 18:06 | 只看该作者
是哪的电流啊,会不会是某些元件的储能放电了

使用特权

评论回复
11
冰河w| | 2015-10-25 18:24 | 只看该作者
有可能啊,不过电容放电会有这么大电流吗

使用特权

评论回复
12
sla| | 2015-11-23 09:56 | 只看该作者
复位不充分的问题,可尝试把复位时间拉长,超过最短复位脉冲宽度两倍,该问题应能解决

使用特权

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

本版积分规则

1

主题

7

帖子

1

粉丝