0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

看完必会!Open开发低功耗应用:电源管理核心API全攻略!

合宙LuatOS 来源:合宙LuatOS 作者:合宙LuatOS 2025-04-10 14:36 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

低功耗设计是Open开发的核心竞争力之一,而电源管理API则是实现这一目标的技术基石。通过灵活调用这些接口开发者可精准控制硬件资源使用、动态调整系统能耗模式、优化任务执行时机,从而显著延长设备续航时间。本文将全面梳理核心API的功能与用法,并提供实战案例,助你轻松掌握低功耗开发精髓。

最新资料详见:https://docs.openluat.com/air780epm/luatos/api/core/pm/

在实际应用中可灵活结合硬件设计,实现物联网设备超低功耗待机‌、‌动态性能优化‌、‌电池保护及系统防崩溃‌的完整电源管理方案。

一、Air780EPM低功耗模式

1.1 功耗模式定义及典型功耗

Air780EPM三种功耗模式的介绍,“常规模式”、“低功耗模式”、“PSM+模式”,以及典型实网环境条件下的功耗测试数据,如下表所示:

wKgZO2f3Yf2Af-5zAAQk7VIPZAQ892.png

wKgZPGf3YhKAZfE1AACXNk-U_0o495.png

1.2 如何设置Air780EPM功耗模式

wKgZPGf3YjmAXfy_AAj6BHzZsKY746.png

wKgZPGf3Yk-AJ_1YAAA595egw-Y662.png

我知道你一定会问:为什么1和2都是低功耗模式?Why?

历史原因,pm.WORK_MODE在LuatOS中定义了4个模式,但是,就Air780EPM这一特定型号来说,为了方便理解和简化设计,只定义了3种功耗模式,所以就出现了1和2都是低功耗模式的结果。

注意:1和2没有任何区别,设置1和2都是同一个低功耗模式,请大家在设计时务必注意!!!

1.3 pm.power(id, int)

设置Air780EPM进入常规模式、低功耗模式、PSM+模式的函数。

1)参数:

id:int型(功耗模式控制id,pm.WORK_MODE);

int:int型(0,常规模式;1,低功耗模式;2,低功耗模式;3,PSM+模式; )。

2)返回值:

返回值类型:boolean;

说明:处理结果true成功,false失败。

3)例子:

wKgZO2f3YouASe4qAACW3lNTnXw060.png

二、与定时器唤醒相关的函数

2.1 pm.dtimerStart(id, timeout)

启动底层定时器,在常规模式/低功耗模式/PSM+模式下都可以生效,只触发一次;注意,关机状态下无效。

1)参数:

id:int型

定时器id;Air780EPM可以设置多个定时器,不同的定时器ID代表不同的定时器进程;一般来说,定时器进程不要超过6个。相应的,定时器ID的取值范围是0-5; 其中,0和1的最大休眠时长是2.5小时,2到5的最大休眠时长是740小时。

timeout:int型(定时时长,单位毫秒)。

2)返回值:

返回值类型:boolean;

说明:处理结果。

3)例子:

wKgZO2f3YsGADDSfAAD5KPjKW0s856.png

2.2 pm.dtimerStop(id)

关闭底层定时器

1)参数:

id:int型(定时器id);

2)返回值:无

3)例子:

wKgZO2f3YviAA0q-AABrBn1alUw723.png

2.3 pm.dtimerCheck(id)

检查底层定时器是不是在运行。

1)参数:

id:int型(定时器id);

2)返回值:

返回值类型:boolean(处理结果,true还在运行,false不在运行);

返回值类型:number(如果运行,运行剩余时间,单位毫秒)。

3)例子:

wKgZO2f3YxeAA1X6AAB82hwCS-4743.png

2.4 dtimerWkId()

检查定时唤醒是哪一个定时器,如果不是定时唤醒的,返回-1。

1)参数:无

2)返回值:

int型(处理结果 >=0 是本次定时唤醒的定时器ID,其他错误,说明不是定时唤醒的)。

3)例子:

wKgZO2f3YzmAXqJ5AADvctNiyDc433.png

三、开机、关机、重启等相关函数

3.1 pm.lastReson()

Air780EPM共有如下几种开机形式:

PSM+模式下,RAM掉电,PSM+模式前数据丢失,退出PSM+模式后代码需要从头开始运行,这个过程,也被视为"开机";

从PSM+模式到低功耗模式或常规模式,原因有 定时器唤醒、WAKEUP唤醒、开机键唤醒、UART1唤醒 四种唤醒方式,这四种唤醒方式,是Air780EPM的开机原因之一;

除从PSM+模式到低功耗模式或常规模式的开机之外,还有关机状态下的PWRKEY开机、常规模式/低功耗模式/PSM+模式下的Reset重启,闹钟开机、软件重启、LuaTools等工具控制重启、内部看门狗重启、外部重启以及程序跑飞下的异常开机等。

pm.lastReson()函数,就是用来识别和返回Air780EPM这些开机原因的函数。

1)参数:

id:int型

定时器id;Air780EPM可以设置多个定时器,不同的定时器ID代表不同的定时器进程;一般来说,定时器进程不要超过6个。相应的,定时器ID的取值范围是0-5; 其中,0和1的最大休眠时长是2.5小时,2到5的最大休眠时长是740小时。

timeout:int型(定时时长,单位毫秒)。

2)返回值:

wKgZPGf3Y3WAC9AVAAKTMdvD5p0956.png

3)例子:

wKgZO2f3Y5OAXNC_AABNWjOOKok326.png

3.2 pm.shutdown()

用于关机。

1)参数:无

2)返回值:nil(无返回值)

3)例子:

wKgZPGf3Y7OACFCvAAAvKNiO1-M906.png

3.3 pm.reboot()

用于重启。

1)参数:无

2)返回值:nil(无返回值)

3)例子:

wKgZPGf3Y9GAbL0iAAArj386irc055.png


四、IO电平介绍及相关设置函数

pm.ioVol(id, val)

IO高电平电压控制函数

Air780EPM的IO高电平,出厂默认3.0V:

可以通过将Air780EPM的PIN100:IO_Volt_Set拉低到GND改变IO高电平,开机即设置为1.8V;

也可以通过此函数,将IO高电平设置为典型值1.8V/2.8V/3.0V/3.3V。注意!设置IO高电平,实际设置的是Air780EPM的PIN24:VDD_EXT的电压,IO高电平与VDD_EXT电压保持一致。

任何情况下,无论Air780EPM的PIN100:IO_Volt_Set是悬空还是下拉到GND,IO高电平都是以本函数的设置为优先。

1)参数:

id:int型(电平id,目前只有pm.IOVOL_ALL_GPIO);

val:int型(电平值,单位毫伏)。

2)返回值:

返回值类型:boolean(处理结果true成功,false失败)。

3)例子:

wKgZO2f3ZA2ACrQeAAFrpOHXAd8013.png

五、相关补充说明

5.1 关于PSM+模式的补充说明

PSM+模式下,模组处于离线状态,无法接收服务器下发信息;退出PSM+模式后,Air780EPM大概在3秒内可以驻网成功。

5.2 关于低功耗模式的补充说明

给出的低功耗模式下的数据,是在特定条件下的测试数据,比如,DRX=2.56秒。

实际环境下,信号质量、DRX间隔等都是由模组所处环境的基站决定,模组并不能自行设置。因此,功耗表现可能与测试数据有差异。

一般情况下,低功耗模式下,模组的功耗在1mA左右都可以被认为是正常表现。

5.3 关于WAKEUP中断唤醒的补充说明

模组在PSM+模式下有四种常见的唤醒方式:

定时器唤醒;

开机键PWRKEY;

串口UART1接收数据;

WAKEUP中断;

其中,WAKEUP中断的使用方式会在API库GPIO中进行介绍,开机键PWRKEY本质上也是WAKEUP。

比如:WAKEUP0,则用gpio.WAKEUP0;pwrkey,则用常量 gpio.PWR_KEY。

5.4 关于PWRKEY开机和Reset复位的补充说明

Air780EPM默认开启了PWRKEY开机防抖;因为开启了PWRKEY开机防抖,所以Reset复位功能就转变成了关机,不能复位。

所以,Air780EPM的Reset是关机,不是复位!

wKgZO2f3ZGWAVTnYAANbIRVwnkU398.png


Air780EPM最新开发资料详见:

www.air780epm.cn

今天的内容就分享到这里了~

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电源管理
    +关注

    关注

    117

    文章

    8622

    浏览量

    148246
  • API
    API
    +关注

    关注

    2

    文章

    2476

    浏览量

    67023
  • 低功耗
    +关注

    关注

    12

    文章

    4032

    浏览量

    106852
  • Open
    +关注

    关注

    0

    文章

    24

    浏览量

    11449
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深入解析 ADP1828 同步降压 PWM 控制器:设计与应用全攻略

    深入解析 ADP1828 同步降压 PWM 控制器:设计与应用全攻略 在电子工程师的日常工作中,电源管理是一个至关重要的领域。而 ADP1828 同步降压 PWM 控制器作为一款功能强大且应用广泛
    的头像 发表于 03-12 17:10 611次阅读

    澎湃微小彩屏显示开发全攻略

    随着智能穿戴、智能小家电及工业控制终端的升级,“小尺寸、高帧率、低功耗”的彩屏显示需求迎来爆发。如何利用有限的MCU资源,驱动出丝滑般的动画效果?
    的头像 发表于 03-09 15:25 382次阅读
    澎湃微小彩屏显示<b class='flag-5'>开发</b><b class='flag-5'>全攻略</b>

    深入解析TPS25961 eFuse:功能特性与应用设计全攻略

    深入解析TPS25961 eFuse:功能特性与应用设计全攻略 在电子工程师的日常设计工作中,电路保护和电源管理是至关重要的环节。今天,我们就来详细探讨一下德州仪器(TI)推出的TPS25961
    的头像 发表于 02-27 17:10 661次阅读

    低功耗电源管理神器——LTC2935 电压监视器详解

    低功耗电源管理神器——LTC2935 电压监视器详解 在电子设备的电源管理领域,低功耗、高精度、多功能的电压监视和复位功能是至关重要的。今天
    的头像 发表于 02-27 11:45 410次阅读

    零碳园区建设全攻略:政策导向+建设路径+技术支撑+实践案例

    零碳园区建设全攻略:政策导向+建设路径+技术支撑+实践案例 安科瑞销售工程师-蔡禹 咨询:18702109681 全球气候变化背景下,“双碳”目标成为中国发展的重要战略指引,园区作为工业碳排放核心
    的头像 发表于 02-06 16:48 1432次阅读
    零碳园区建设<b class='flag-5'>全攻略</b>:政策导向+建设路径+技术支撑+实践案例

    深入解析LM393-MIL双差分比较器:设计与应用全攻略

    深入解析LM393-MIL双差分比较器:设计与应用全攻略 在电子工程师的设计世界里,比较器是一种基础且至关重要的器件。今天,我们要详细探讨的是TI公司的LM393-MIL双差分比较器,它在众多领域
    的头像 发表于 02-05 15:50 541次阅读

    RK平台休眠唤醒与低功耗调试全攻略:从原理到WiFi功耗问题实战

    在物联网设备、便携终端等场景中,低功耗是决定产品续航与用户体验的核心指标—— 尤其是瑞芯微(RK)平台设备,常需在性能与功耗间找到精准平衡。但实际开发中,休眠唤醒异常、外设(如 WiF
    的头像 发表于 02-05 13:44 2430次阅读
    RK平台休眠唤醒与<b class='flag-5'>低功耗</b>调试<b class='flag-5'>全攻略</b>:从原理到WiFi<b class='flag-5'>功耗</b>问题实战

    UPS不间断电源是什么?企业如何选型与维护?2026年全攻略

    不间断电源(UPS)。本文将为您深入解析UPS,并提供一份贴合当下需求的企业选型与维护全攻略。一、深度解析:UPS不仅仅是“备用电池”不间断电源(Uninterrupt
    的头像 发表于 01-16 10:46 1970次阅读
    UPS不间断<b class='flag-5'>电源</b>是什么?企业如何选型与维护?2026年<b class='flag-5'>全攻略</b>

    迅为驱动开发实战:iTOP-RK3568开发板eDP屏幕移植全攻略

    迅为驱动开发实战:iTOP-RK3568开发板eDP屏幕移植全攻略
    的头像 发表于 12-30 15:42 1258次阅读
    迅为驱动<b class='flag-5'>开发</b>实战:iTOP-RK3568<b class='flag-5'>开发</b>板eDP屏幕移植<b class='flag-5'>全攻略</b>

    深入解析DLP650NE数字微镜器件:设计与应用全攻略

    深入解析DLP650NE数字微镜器件:设计与应用全攻略 在当今的显示技术领域,数字微镜器件(DMD)凭借其独特的优势,成为了众多显示应用的核心组件。TI的DLP650NE作为一款高性能的DMD,为全
    的头像 发表于 12-15 09:15 2254次阅读

    GPS设计全攻略

    电子发烧友网站提供《GPS设计全攻略.pdf》资料免费下载
    发表于 12-01 17:10 0次下载

    医疗电子EMC整改:原理到实战的系统化全攻略策略

    深圳南柯电子|医疗电子EMC整改:原理到实战的系统化全攻略策略
    的头像 发表于 11-27 09:45 1076次阅读

    工业 / 民用电表排线全攻略:安全合规 + 高效布线,90% 电工都在用的标准化方案

    工业 / 民用电表排线全攻略:安全合规 + 高效布线,90% 电工都在用的标准化方案 电表布线错一步,安全隐患埋十年!电工师傅、装修负责人、物业工程人员注意了—— 不合格的电表排线不仅会导致跳闸
    的头像 发表于 11-06 21:17 1845次阅读
    工业 / 民用电表排线<b class='flag-5'>全攻略</b>:安全合规 + 高效布线,90% 电工都在用的标准化方案

    淘宝买家/卖家订单列表、订单详情、订单物流 API 接口全攻略

    一、接口概述 淘宝订单相关 API 接口为开发者提供了获取订单数据、追踪物流状态的核心能力,支持以下三大功能: 订单列表查询:批量获取指定时间范围内的订单信息,支持按状态、时间等条件筛选。 订单详情
    的头像 发表于 11-06 13:46 901次阅读

    超详尽低功耗实测报告:应用实践全攻略

    低功耗设计并非纸上谈兵,实测数据才是硬道理。本报告结合多场景实测结果,系统总结低功耗技术的应用策略:从电路优化到代码精简,从休眠模式到动态调度,为您呈现低功耗实现的完整攻略。 能拍、能
    的头像 发表于 07-28 17:30 577次阅读
    超详尽<b class='flag-5'>低功耗</b>实测报告:应用实践<b class='flag-5'>全攻略</b>