[STM32F1] STM32F103C8T6 低功耗的问题

[复制链接]
6391|33
 楼主| Cjy_JDxy 发表于 2019-3-6 09:03 | 显示全部楼层 |阅读模式
我做一款产品,需要低功耗,芯片是STM32F103C8T6.板子上有一个STM32F103C8T6芯片,一个蓝牙模块,10个按键,一个指示灯。
用CR2032供电。
不加低功耗功能时,一天就把电耗完了。
后来加了低功耗睡眠模式,程序如下:
int main(void)
{
        u8 **;
        long int i;
        char flag=0;
        Stm32_Clock_Init(9);                    //72MHz
    //IWDG_Init(6,800);               //看门狗初始化,256分频,800计数,复位时间5s
        CPU_Init();                     //CPU初始化               
        VAR_Init();                                                //变量初始化
        Timer_Init();                                        //定时器初始化
        //usart1_init(115200);                        //串口1初始化
        usart1_init(9600);               
        usart2_init(115200);                        //串口2初始化
        InitKeyboard();
       
        。。。。。。。。。。。。。。。。。
6.jpg

可是试验了一下,还是一天就把电耗完了。高手给看看,哪里有问题?谢谢!



评论

@xch :谢谢!我用的是睡眠模式。  发表于 2019-3-7 17:59
xch
你这软件写错了,wfi 指令本身进不了最低的功耗模式。在进入之前需要将ARM mcu 内核 的 SLEEPDEEP位置1.  发表于 2019-3-7 17:07
mohanwei 发表于 2019-3-6 09:25 | 显示全部楼层
低功耗要考虑的东西太多
内核只是一方面。
外围更重要。蓝牙待机电流?LED是否亮着?IO电平是否合理?是否频繁唤醒?……要在进入低功耗时分别测量整机电流、各项电流看哪里不符合设计目标
 楼主| Cjy_JDxy 发表于 2019-3-6 09:56 | 显示全部楼层
LED只有按键按下的时候亮,定时器50ms唤醒一次。
ningling_21 发表于 2019-3-6 09:58 | 显示全部楼层
Cjy_JDxy 发表于 2019-3-6 09:56
LED只有按键按下的时候亮,定时器50ms唤醒一次。

要电池供电,这芯片不行需换芯片
 楼主| Cjy_JDxy 发表于 2019-3-6 10:05 | 显示全部楼层
ningling_21 发表于 2019-3-6 09:58
要电池供电,这芯片不行需换芯片

换什么芯片?
wanduzi 发表于 2019-3-6 12:57 | 显示全部楼层
也可能是外部电路耗电了。
 楼主| Cjy_JDxy 发表于 2019-3-6 13:02 | 显示全部楼层
wanduzi 发表于 2019-3-6 12:57
也可能是外部电路耗电了。

这是原理图,看看哪有需要改进的。谢谢!
7.jpg




wanduzi 发表于 2019-3-6 13:17 | 显示全部楼层
那些按键的上拉电阻是多少,这个肯定是在耗电的。还有那个LED是不是一直都亮着
 楼主| Cjy_JDxy 发表于 2019-3-6 13:30 | 显示全部楼层
wanduzi 发表于 2019-3-6 13:17
那些按键的上拉电阻是多少,这个肯定是在耗电的。还有那个LED是不是一直都亮着 ...

LED灯是按键按下才亮
 楼主| Cjy_JDxy 发表于 2019-3-6 13:31 | 显示全部楼层
wanduzi 发表于 2019-3-6 13:17
那些按键的上拉电阻是多少,这个肯定是在耗电的。还有那个LED是不是一直都亮着 ...

上拉电阻10K
ningling_21 发表于 2019-3-6 13:47 | 显示全部楼层
Cjy_JDxy 发表于 2019-3-6 13:02
这是原理图,看看哪有需要改进的。谢谢!

蓝牙模块需加电路控制电源切断,STM芯片换L系列
 楼主| Cjy_JDxy 发表于 2019-3-6 13:53 | 显示全部楼层
ningling_21 发表于 2019-3-6 13:47
蓝牙模块需加电路控制电源切断,STM芯片换L系列

那应该怎么加电路控制电源切断呢?什么时候切断?什么时候供电?我是菜鸟,请明示。
ningling_21 发表于 2019-3-6 14:16 | 显示全部楼层
Cjy_JDxy 发表于 2019-3-6 13:53
那应该怎么加电路控制电源切断呢?什么时候切断?什么时候供电?我是菜鸟,请明示。 ...

进入待机模式(低功耗)前切断蓝牙模块电源,唤醒后再打开
一般用MOS管即可
 楼主| Cjy_JDxy 发表于 2019-3-6 14:42 | 显示全部楼层
ningling_21 发表于 2019-3-6 14:16
进入待机模式(低功耗)前切断蓝牙模块电源,唤醒后再打开
一般用MOS管即可
...

2.jpg ningning_21大神,我加了个MOS管,这样可以吗?我是菜鸟,不太会用Mos管。谢谢!



 楼主| Cjy_JDxy 发表于 2019-3-6 17:11 | 显示全部楼层
我仿真了一下,可以了。
5.jpg




wenleileilei 发表于 2019-3-6 19:57 | 显示全部楼层
手机电池也是一天,这可以了
FAQ 发表于 2019-3-6 21:12 | 显示全部楼层
CR2032不适合STM32
lihui567 发表于 2019-3-7 08:39 | 显示全部楼层
这个低功耗的话,这个单片机不是太适合,可以用stm32L系列的功耗低
huzi2099 发表于 2019-3-7 08:44 | 显示全部楼层
你这个要全面的测试和规划,希望的待机时间;电池容量;各部分电路消耗;
你电路里最耗电的就是兰牙,根本上还是不知道用户什么时候会连接,这个问题能解决就省一大块.
sillumin半导体 发表于 2019-3-7 11:46 | 显示全部楼层
主要耗电的方面比较多,还得看外部电路,可以找代理商推荐其他型号代替
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:绿水本无忧因风皱面,青山原不老为雪白头。

553

主题

3530

帖子

20

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