LoRa-IoT低功耗配置(AT)
- 一、引言
- 二、数据参考
- 三、低功耗测试
- 3.1 搭建环境
- 3.2 模式配置
- 3.3 低功耗唤醒
- 四、设计总结
一、引言
低功耗是评估很多元器件或设备性能的重要参数之一,对于使用电池供电的设备来说,功耗越低,意味着设备工作时间越长,减少后期维护操作。
LoRa-IoT开发板在设计之初,考虑能在电池供电的设备中使用,选型时采用低功耗元器件:STM8L151G6低功耗MCU和SX1278系列LoRa模组。
二、数据参考
LoRa特点之一是低功耗,SX1278官方数据手册上,休眠电流典型值是0.2uA。
STM8L151G6数据手册上只给出几个温度下的休眠电流,从Table 26可以看到,休眠电流会随着温度升高而上升,但是手册上没有给出详细的休眠电流与温度的变化曲线。
LoRa-IoT开发板上影响电流值的器件是MCU和LoRa,所以开发板休眠电流应该是两者之和。电流值在最大范围内都是正常数值,如果测试过程中发现休眠电流比参考数值大很多,首先确认程序是否已经配置好,其次考虑购买的元器件性能参数是否达到要求,或者设备因为生产加工造成的影响。
三、低功耗测试
3.1 搭建环境
连接开发板和USB转TTL,开发板使用USB转TTL上的3.3V电源线供电,在测电流时,可以把万用表置于mA档位后,串入3.3V电源线中。
如图所示,初始状态时,电流示数是:17.00mA。
3.2 模式配置
打开串口调试助手,输入AT指令AT+MODE+SLEEP,将开发板配置成低功耗模式。
AT指令 | 正确返回值 | 指令说明 |
AT+MODE+SLEEP | MODE SLEEP | 设置为休眠模式 |
万用表示数变成0.00mA,这是因为LoRa-IoT开发板在休眠模式下电流很小(<2uA),有些万用表在mA档位不能显示数值或者显示的数值精度不够,需要从mA档位切换至uA档位。
切换到uA档位后,万用表示数变成了-0.8uA,数值变成负数,在这里是因为开发板进入休眠模式后电流很低,USB转TTL上的TXD和RXD管脚对开发板低功耗产生影响。断开USB转TTL的RXD和TXD,电流示数变成了0.7uA,这个数值才是低功耗时的电流大小。
3.3 低功耗唤醒
开发板进入休眠模式后,不能收发数据或配置,引脚6是高电平,需要给一个外部中断(下降沿触发),将开发板从休眠模式唤醒后才能进行操作。
使用杜邦线将Pin6管脚拉低,形成一个下降沿唤醒开发板,串口助手收到唤醒信息,此时电流示数是5.92mA。
操作视频点击观看:LoRa-IoT低功耗配置(AT)
四、设计总结
设备如果有低功耗需求,那么设备在设计、调试及使用时,有以下几点可以参考:
- 设计电路时,尽量减少外围器件;
- 选用满足功能需求、低功耗、低工作电压、工作电压范围宽的MCU和外围芯片;
- 外围器件在不工作时,应关闭电源或配置成最低功耗,MCU应配置成最低功耗;
- 合理使用MCU的多种工作模式;
- 合理配置时钟、外设、GPIO;
- 测量功耗时,断开调试器(USB转TTL、ST-LinK);
- 合理配置设备的工作模式和休眠时间。