省电模式

作者:金艺

Air724UG支持多种省电模式,通过进入不同的省电模式达到降低功耗的目的。

luat二次开发只支持如下3种工作模式: 1. 全功能模式:一般的工作模式,CPU,时钟全速运行。 1. 休眠模式:CPU休眠,射频部分工作,周期进行寻呼,仅维持网络连接,能随时接收网络端的电话,短信等。功耗较低(具体功耗数据参考6.5章节),主要的省电模式。可以通过GPIO中断,内部计时器中断,网络消息,来电,短信等唤醒。 1. 最少功能模式(RF和SIM都关闭):CPU休眠,射频与SIM卡关闭,无法注册网络,无法接收网络端的任何信息。功耗最低

luat版本默认自动休眠控制,系统空闲会自动进入休眠。但是要在进行串口,SPI,ADC,I2C操作时,需要调用pm.wake()主动唤醒。操作结束后,需要调用pm.sleep()重新进入自动休眠控制。休眠功耗见 1.7 功耗

注意:模块是否有进入睡眠模式,从外部电气信号或调试日志中无法体现,只能通过检测模块的消耗电流来判断。进入休眠后模块的电流会在1到2mA的底电流的基础上跳动。

相关API:

pm.wake(tag): 某个Lua应用唤醒系统。 - 参数 传入值类型: param。 释义:tag,一般string类型,某个Lua应用的唤醒标记,用户自定义。 - 返回 无 - 示例 pm.wake(“uart”)

pm.sleep(tag): 某个Lua应用休眠系统。 - 参数 传入值类型: param。 释义:tag,一般string类型,某个Lua应用的唤醒标记,用户自定义,跟wake中的标记保持一致。 - 返回 无 - 示例

pm.wake("A") --执行本句后,A唤醒了模块
pm.wake("A") --执行本句后,A重复唤醒模块,实际上没什么变化
pm.sleep("A") --执行本句后,A休眠了模块,lua部分已经没有功能唤醒模块了,模块是否休眠由core决定

pm.wake("B") --执行本句后,B唤醒了模块
pm.wake("C") --执行本句后,C唤醒了模块
pm.sleep("B") --执行本句后,B休眠了模块,但是lua部分还有C已经唤醒了模块,模块并不会休眠
pm.sleep("C") --执行本句后,C休眠了模块,lua部分已经没有功能唤醒模块了,模块是否休眠由core决定

net.switchFly(mode): 设置飞行模式。 - 参数 传入值类型: bool。 释义:true:飞行模式开,false:飞行模式关. - 返回 无 - 示例 net.switchFly(true)

相关资料

《AT指令手册》

常见问题

  • 连接服务器失败

    1. 服务器必须是公网地址

    2. 使用PC上的TCP UDP测试工具客户端、或者mqtt.fx,连接服务器确认一下是否可以连接成功,排除服务器故障

    3. 检查下模块信号、网络注册、网络附着、PDP激活状态

    4. 检查下SIM卡是否欠费

    5. 检查SIM卡是否在位

  • 最多同时支持多少个连接 AT版本最多8个连接