热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

STM32L071驱动SX1278实现2uA低功耗

一直想做一个低功耗的产品,网上卖的产品说功耗可以到达2uA,所以自己做一个实验,验证是否可以低到2uA,同时也为了以后产品做技术储备,1,模块选择是几年前从公司剩下的2个郎威模块,

一直想做一个低功耗的产品,网上卖的产品说功耗可以到达2uA,所以自己做一个实验,验证是否可以低到2uA,同时也为了以后产品做技术储备,

1,模块选择是几年前从公司剩下的2个郎威模块,一个制作接收,一个制作发送,发送端低功耗。

第一步,设计发送端,发送端通过SHT20采集温湿度,通过两个3M的分压电阻采集电池电压,半个小时采集一次上发到中心点接收模块,通过串口传输给中心站,并保存到SD卡,所以硬件有需要绘制一个采集板,有SHT20,LDO电源,用18650锂电池供电。

2,软件需要写3个,一个采集模块,一个接收模块,一个中心存储模块,协议自己定的协议,采集板自己绘制,通信模块用的是现有厂家的,中心站用的407开发板。

3,编写采集板程序,刚开始用的stop模式发现只能到2MA,停滞,接着曲线救援,换用standby模式,功耗降为1.8ma左右,后来发现SX1278要进入睡眠模式,功耗降到了350uA,为了功耗更低,把分压电阻,LDO去掉,SHT20电源直接用STM32L071IO口供电,降到了130uA,2uA难道是个传说?看资料说ST芯片standby模式io为高阻态,引脚状态不可控,网上咨询,别人也没给回复,自己搞,又变回了Stop模式,一个脚一个脚的试,最后发现是MCU驱动SX1278的RST引脚不能配置为模拟输入,改为上拉输出电流降低到2uA(模块厂家SX1278RST外挂了一个10K的上拉电阻),SHT20温度采集需要80mS,湿度采集要40mS,STM32L071官网的STOP模式引脚配置为浮空模拟输入, 实测不如设置为输入下拉好,还是依实际应用来配置,这里重点说下LDO电源,当时就是想当然的从淘宝上买了一种SOT23-5的芯片,实际测试中低功耗模式下,这个ldo电流消耗就达到了130uA,后来从明达微申请5片MD5133和MD5233,低功耗模式这两片子确实需要表扬一下,LDO+通信模块+3M的分压电阻stop模式总体功耗在4uA左右,外挂3M的电阻,ADC 采集不准,不想再搞了,直接加了个系数1.38,精度在接受的范围。由于只是检测家里的温湿度,发送数据间隔定为1个小时。模块没有采用应答模式,不知道对方接收是否成功功能,(后期再加)采集模块开机10S内可以配置参数,模块地址,上传间隔,发射功率,发设通道,原来设计的是用18650锂电池,现在采集端可以用纽扣电池供电,而且纽扣电池的自放电小,不接设备4,5年,好的10年还有电,而锂电池估计不接设备3,4年就没电了,自身损耗比设备功耗还大。

4,编写接收模块,由于不考虑功耗所以没有那么多限制,只负责接收,也不需要接收应答。

5,中心站是STM32F4负责接收从接收模块的数据,解析,并在SD卡中对应采集器编号建立文件,将数据添加日期后存入。

6,如果有外接芯片低功耗要用stop模式,standby模式达不到最低功耗,如果只是但MCU验证standby模式确实能到1uA以下。

 


推荐阅读
  • 我自己做了一个网站图片的抓取,感觉速度有点慢抓取4000张图片可能得用15分钟左右的时间,我百度看用线程可以加快抓取,然后创建了5个线程抓取,但是5个线程是同步执行同样的操作一个图片就 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • 本文详细介绍了如何在Oracle VM VirtualBox中实现主机与虚拟机之间的数据交换,包括安装Guest Additions增强功能,以及如何利用这些功能进行文件传输、屏幕调整等操作。 ... [详细]
  • HTML:  将文件拖拽到此区域 ... [详细]
  • GLiHT数据介绍
    GLiHT数据介绍 ... [详细]
  • 在现代Web开发中,HTML5 Canvas常用于图像处理和绘图任务。本文将详细介绍如何将Canvas中的图像导出并上传至服务器,适用于拼图、图片编辑等场景。 ... [详细]
  • Linux环境下MySQL的安装与配置
    本文详细介绍了在Linux系统上安装和配置MySQL的步骤,包括安装前的准备工作、下载和解压安装包、初始化数据库、配置文件编辑、启动服务以及设置开机自启动等。 ... [详细]
  • Django与Python及其他Web框架的对比
    本文详细介绍了Django与其他Python Web框架(如Flask和Tornado)的区别,并探讨了Django的基本使用方法及与其他语言(如PHP)的比较。 ... [详细]
  • PCIe中的弹性缓冲原理解析
    PCIe是一种高速串行总线,其传输信号为差分信号,并采用同步传输方式。然而,PCIe并没有专用的同步时钟。本文将详细介绍PCIe中的弹性缓冲(Elastic Buffer)原理,探讨其如何处理时钟差异,确保数据传输的稳定性和可靠性。 ... [详细]
  • 使用HTML和JavaScript实现视频截图功能
    本文介绍了如何利用HTML和JavaScript实现从远程MP4、本地摄像头及本地上传的MP4文件中截取视频帧,并展示了具体的实现步骤和示例代码。 ... [详细]
  • 本文介绍了如何查看PHP网站及其源码的方法,包括环境搭建、本地测试、源码查看和在线查找等步骤。 ... [详细]
  • 本文介绍了如何使用 Google Colab 的免费 GPU 资源进行深度学习应用开发。Google Colab 是一个无需配置即可使用的云端 Jupyter 笔记本环境,支持多种深度学习框架,并且提供免费的 GPU 计算资源。 ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • 本文介绍了两种有效的方法来解决DataSnap支持的Tcp长连接数受限的问题。方案一通过代理服务器实现负载均衡,方案二则利用多进程技术提升连接数。 ... [详细]
  • 无论是在迁移到云服务还是更换云服务商的过程中,数据迁移都是一个至关重要的环节。本文将探讨数据迁移中可能遇到的问题及解决方案,包括路径问题、速度问题和数据完整性等。 ... [详细]
author-avatar
Only-安之若素
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有