烧录bootloader后功耗变高

2019-07-14 15:21发布

我做一个低功耗的东西。使用STM32f072芯片,单纯烧录调试APP软件,系统进入睡眠后电流大约为2.2mA。然后做带在线升级功能,先烧录IAP的bootloader程序(官方例程),然后再烧录APP程序,系统进入睡眠模式后变成了5.86mA。系统功能没有问题都是正常的,但功耗却莫名增大了。系统睡眠调用PWR_EnterSleepMode(PWR_SLEEPEntry_WFI),为什么加了bootloader会影响系统功耗。
但是,其它代码都没有变,系统睡眠调用PWR_EnterSTOPMode(PWR_Regulator_LowPower,PWR_STOPEntry_WFI),不管烧录不烧录bootloader,系统进入睡眠后功耗都没有影响,前后一致。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
60user200
1楼-- · 2019-07-15 00:02
你可能没注意看,我不是对比sleep和stop模式的功耗。而是说进入bootloader对功耗的不同。
60user200
2楼-- · 2019-07-15 05:59
 精彩回答 2  元偷偷看……
leilijiao
3楼-- · 2019-07-15 11:51
60user200 发表于 2018-12-10 12:55
我想是不是因为bootloader程序和APP程序独立,然后再APP使用PWR_EnterSleepMode(PWR_SLEEPEntry_WFI)对bootloader不起多大作用,系统正常运行的话是执行APP的程序,无法关闭bootloader中开启的时钟外设等,所以APP部分的功耗降下了,但bootloader的没降下去。整体就是没有降下去。但是如果使用PWR_EnterSTOPMode(PWR_Regula ...

感觉分析的挺有道理的,这个最好能测试验证下就知道了。
leilijiao
4楼-- · 2019-07-15 15:54
60user200 发表于 2018-12-10 12:55
我想是不是因为bootloader程序和APP程序独立,然后再APP使用PWR_EnterSleepMode(PWR_SLEEPEntry_WFI)对bootloader不起多大作用,系统正常运行的话是执行APP的程序,无法关闭bootloader中开启的时钟外设等,所以APP部分的功耗降下了,但bootloader的没降下去。整体就是没有降下去。但是如果使用PWR_EnterSTOPMode(PWR_Regula ...

你用的bootloader 的烧录app的方式是什麽方式呢?USART? USB?
leilijiao
5楼-- · 2019-07-15 20:59
60user200 发表于 2018-12-10 12:55
我想是不是因为bootloader程序和APP程序独立,然后再APP使用PWR_EnterSleepMode(PWR_SLEEPEntry_WFI)对bootloader不起多大作用,系统正常运行的话是执行APP的程序,无法关闭bootloader中开启的时钟外设等,所以APP部分的功耗降下了,但bootloader的没降下去。整体就是没有降下去。但是如果使用PWR_EnterSTOPMode(PWR_Regula ...

你用的bootloader 的烧录app的方式是什麽方式呢?USART? USB?
MarsShu
6楼-- · 2019-07-15 21:16
猜想:加了bootloader之后EnterSleepMode是否失败,进了其他功耗高一点的其他休眠模式

一周热门 更多>