当前位置:   article > 正文

STM32与LoRa低功耗调试总结

STM32与LoRa低功耗调试总结

前言:物联网的大部分设备都是电池供电的,设备本身低功耗对设备使用寿命至关重要,今天就以实际调试经验,聊一聊stm32的低功耗调试。

1、stm32在运行状态下的功耗

上图截图自stm32l15x手册,stm32l15x系列最大运行在32M;如果在最大频率下运行,那么mcu功耗是214uA*32=6848uA=6.8mA,如果还有外设,那么整个系统功耗可能会更多。

因此,在调试功耗的时候,可以用上面的6.8mA当做一个参考,判断mcu有没有进入低功耗状态(stop,standby等)。

2、对于没有使用到的IO口处理

经过反复试验测试,对于没有使用的io配置为推挽输出,且输出高电平。

3、Adc采样引脚处理

软件上配置为模拟输入,硬件采样电阻要尽可能的大,比如2M,假如VBAT=3.6V,那么耗电仅仅为I=U/R=3.6/(4*1000000)=0.9uA。

4、上下拉IO口处理

硬件上拉,IO要配置成上拉,硬件下拉,IO口要配置成下拉。

5、传感器供电处理

采样的时候供电,其他时间断电;通过PB5控制4.2V的输出,因此在休眠的时候可以拉低PB5,节约功耗。

6、三极管的be极或者MOS管的gd极耗电

在调试的时候,因为某些原因,直接把R19的右边,接在了mos管的g极,在PB6拉高后,mos管导通,gd极的压降很小,相当于将3.3v直接加在了1k的电阻上,粗略计算下,3.3/1000=330mA电流,因为在开机后PB6需要一直保持高电平,所以在实际设计上,三极管的基极, mos管的g极,需要加大电阻。

7、射频开关

通过PB7供电、PB2收发切换,休眠的时候设置为开漏输出。

8、对于外设使用到的io,休眠时候的处理

如果休眠的时候外设要工作,那就不要动,保持原样;

如果休眠的时候外设不工作,处理如下:

对于spi,在休眠的时候SPI去使能,IO口配置成输入上拉输入即可;

对于串口,也是同样的处理。

9、如果功耗还是降不下来怎么办?

终极方法:直接把硬件供电断开,直接给mcu供电,再一步一步恢复供电电路,基本上就能找到耗电的地方

近期博文推荐:

外包接单故事||基于LoRa的医院料架车监测

LoRa网关与平台通讯协议

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/520797
推荐阅读
相关标签
  

闽ICP备14008679号