STM32L4低功耗

发表在 PM2018-3-15 12:34 [复制链接] 4 2609


6 C4 k; [+ l$ s2 E既然选L4不玩低功耗就对不起这芯片了。在l4低功耗上调了2天,终于从最初的680ua降到了22ua(MCU+触模+NFC+RF总功耗)。这个功耗还算可以,如果只是单mcu的话也就2ua不到。+ D$ e9 X* L. `5 s
低功耗这块想要低关键还是要看Io口的配置。这个太关键了。总的方法是:
, v; C6 ^! V8 e1、SWD脚的上拉不要/ m, S; g7 x5 q, Y% D
2、空的引脚用模拟输入(这样可以切掉思密特电路);- e. a* d  w8 E, R$ \. K7 x7 P
3、I2C 浮空输入
$ Z+ k9 s# I' c7 |2 n/ r: }2 a: U5 E4、SPI 这个要具体看你对接的芯片了,通常MISO浮空输入,其他的PP输出,都不要加上下拉。% x2 X# g4 c0 A/ @6 z& }
5、__HAL_RCC_PWR_CLK_ENABLE();
( J- [+ C  h) N+ H3 t     __HAL_RCC_WAKEUPSTOP_CLK_CONFIG(RCC_STOP_WAKEUPCLOCK_MSI);
8 e6 [- n0 r$ `& l6 t6、rt_hw_interrupt_disable(); 这个要定要加上7 a; c' F9 I) S$ x
7、关所有外设时钟
4 x7 p2 X' I4 W" T% D8、HAL_PWREx_DisableInternalWakeUpLine();禁wakeup.我只需要外部中断。( b. z: w& J# g" y
9、HAL_PWREx_EnterSTOP2Mode(PWR_STOPENTRY_WFI);# V; [2 O" l. C) O5 {
后面的事就是唤醒后重新对所有的IO口进行配置了。如果用低功耗定时器补偿记得重新设置TICK.我使用的环境是唤醒后直接NVIC_SystemReset();的。7 Y9 Z, {7 E0 ~. k
使用道具 举报 显示全部楼层 回复
最新评论 | 正序浏览
显示全部楼层 |楼层直达:
发表于 2018-3-15 15:24:10 | 显示全部楼层
数据还可以,可以把功耗再分割一下,看看还有没有异常漏电。
( `- G: ]& a9 I8 b4 i" g) L6 |/ ?  \
使用道具 举报 回复
发表于 2019-4-19 11:09:14 | 显示全部楼层
我前两天也在调试stm32l476的低功耗问题。跟你的问题有点类似,我在裸机情况下,STOP2模式的功耗是1.5uA;使用RT-Thread的pm组件时,STOP2模式的低功耗为30uA左右,还不断的浮动。在使用PM组件时,我已经把systick 、lptimer 及所有的IO的时钟都关闭了。不知道哪里还有功耗。想搞清楚使用PM组件时,是那些功能增大了系统的功耗。
0 X8 T: |$ t1 k/ L, w
使用道具 举报 回复
发表于 2019-4-24 23:25:08 | 显示全部楼层
上系统了没有,发现STOP模式问题比较多。首先是开了Finsh组件后,STOP模式整个就一失效状态,另外唤醒后重新配置时钟树,但是只能响应中断,系统不能正常调度了
使用道具 举报 回复
发表于 2019-8-20 18:38:52 | 显示全部楼层
你好,方便把代码贴出来吗???
使用道具 举报 回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|RT-Thread开发者社区 ( 沪ICP备13014002号-1

有害信息举报电话:021-31165890 手机:18930558079

© 2006-2019 上海睿赛德电子科技有限公司

Powered by RT-Thread

快速回复 返回顶部 返回列表