怎样使用Zigbee模块的低功耗功能

怎样使用Zigbee模块的低功耗功能

低功耗其实包含二方面的含义​:一是运行时的功耗,一般单片机在20mA左右,二是休眠时的功耗,一般可到几个uA。

运行时的功耗不管怎么小,几个mA还是需要的,再好的电池也支撑不了几天,所以,没有任务的时候,让系统进入休眠状态,才是真正的省电​。

下面以DRF1609H来说明下,怎么使Zigbee模块进入、退出休眠状态,及需要注意的事项。

一、概述

Zigbee模块有三种角色(三种类型的节点):Coordinator(协调器),Router(路由器),End Device(终端节点)。
Coordinator(协调器):是Zigbee网络的创建者,并实时负责整个Zigbee网络的维护,可以收发数据,每个网络必须存在且只有一个Coordinator(协调器),Coordinator(协调器)可以收发数据;
Router(路由器):可以收发数据,并且可以自动为其它Zigbee模块提供路由(中继);
End Device(终端节点):可以收发数据,不能为其它节点提供路由(中继),可以设定进入休眠状态;

二、使用方法

1,将Zigbee模块节点类型设置为End Device;
2,发送指令,使Zigbee模块进入休眠(以下为16进制数字);

3,Zigbee模块立即进入休眠状态,进入休眠状态时会保持进入前的任务(如,进入前在寻找网络,则离开低功耗后会继续寻找网络)
4,在休眠状态模式下,拉低FUNCTION按键引脚3ms,则立即退出休眠状态,串口输出3个字节确认:0xFA 0x0A 0x60(前面2个字节的和,保留低8位)。
在这里插入图片描述

三、休眠参数

休眠状态电流:平均约5-6uA,退出休眠状态时间:3ms。

四、使用休眠功能注意事项:

退出休眠后,发送数据应预留足够的时间,预留时间=串口传输时间+10MS,如波特率为9600,传输10个字节,则串口占用时间为9.6MS,总共需要预留19.6MS,到再次进入休眠状态;
DRF1609H带有PA,发射电流可达200MA,但是持续时间非常短(10个字节,大约需要0.4MS),如果采用电池供电,应在模块的电源端至少加10UF以上电容;

五、使用休眠的路由问题:

如图所示,假设E(End Device)在A点,发送数据能直接到达C(Coordinator),休眠后,从A点移动到B点,不能直接到达C,必须通过R(Router)自动路由到C,此时E发出的数据,C将收不到,因为E一直在休眠状态,无法更新自己的路由路径。

六、解决休眠的路由方法:

1,End Device休眠结束后,按点对点方式发送数据,由于Coordinator的短地址永远是0x0000,所以按短地址寻址的点对点方式发送:FD + 数据长度 + 0x0000(Coordinator短地址) + 数据

2,或者,休眠结束后让E立即重启,重启后会自动寻找新的路由路径。或者让E保持正常工作状态10秒以上,获得新的路由路径。
在这里插入图片描述
喜欢我们,记得点赞订阅哦
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值