找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3023|回复: 0
收起左侧

STM32低功耗项目技术总结

[复制链接]
ID:127084 发表于 2016-6-17 13:02 | 显示全部楼层 |阅读模式
  低功耗项目从年前到年后也花了接近一个月左右的时间,其实主要的时间也是花在功耗问题上面,在此对低功耗方面做一个总结,说不上是什么技术分享,只是想把自己遇到的问题说给大家听听,大家共同学习,希望对后期制作低功耗项目有所帮助。
  该项目大体情况:项目使用在一个无电场所,所以需要电池供电,而且由于设备上最终需要使用12-15V供电传感器,传感器(功耗在30-60mA)数据通过无线模块发射到服务器终端。
  项目解决方案:
  1、12-15V电源使用电池串联方式供电(5号电池10节串联后再并联一组共20节蓄能基本在2000mA左右),由于电池在使用过程中电压会降低,当电压低于12V时向服务器发送更换电池请求。
  2、对于STM32电源使用双电源方案,待机使用低功耗变压芯片(允许最大电流小),工作是使用1117变压芯片。
  3、低功耗变压芯片与1117“并联”,电压输出使用二极管隔离,1117芯片通过STM32控制场效应管控制其输入电源,当STM32进入待机模式,场管断开,1117停止供电。
  项目遇到的问题:
  最开始计划经过数据手册的查阅确实是被STM32L系列的芯片功耗所“诱惑”,所以决定使用STM32L051C8作为主控。当初并没有因为芯片为才发布不久而过多的担心,反倒觉得是新发布的芯片肯定会更好用。但是在做项目的时候才发现在官网找不到标准库,只有HAL库。所以当初就使用STMCube生成工程,但是RTC之中出现奇特问题,就是亚秒级在变化,但是秒不变,经过长期检查而不得结果便开始决定直接操作寄存器,但是无意中又发现其标准库。RTC最终正常,但是待机功耗400uA。因为交货比较紧故改为STM32F103c8其待机功耗5uA。(最终项目完成后重新焊接L051为3uA,但是由于值差2uA就没有重新修改项目)。
  项目相关我就不上传了。再次上传电流照片和标准库DEMO。



待机功耗
095350axpdjljfxzsgfd67.jpg


工作功耗(加传感器)
095418hnzyj362tp3yn5ce.jpg



  1. #include "stm32l0xx.h"


  2. int mainbn(void)
  3. {
  4.    GPIO_InitTypeDef GPIOInitStructure;
  5.          SystemInit();
  6.         GPIOInitStructure.GPIO_Pin=GPIO_Pin_7;
  7.         GPIOInitStructure.GPIO_Mode=GPIO_Mode_OUT;
  8.         GPIOInitStructure.GPIO_OType=GPIO_OType_PP;
  9.         GPIOInitStructure.GPIO_PuPd=GPIO_PuPd_UP;
  10.         GPIOInitStructure.GPIO_Speed=GPIO_Speed_10MHz;
  11.         GPIO_Init(GPIOB,&GPIOInitStructure);
  12.         GPIOInitStructure.GPIO_Pin=GPIO_Pin_1;
  13.         GPIO_Init(GPIOA,&GPIOInitStructure);
  14.         GPIO_SetBits(GPIOB,GPIO_Pin_7);
  15.         GPIO_ResetBits(GPIOA,GPIO_Pin_1);
  16.         

  17. }
复制代码


STM32L0xx-Code(SLEEP2Min-RUN2Min).zip (4.89 MB, 下载次数: 28)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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