Zigebee Z-satck协议栈 无线电收发LED灯

实验现象
协调器led的D3口熄灭说明已经建立ZigBee网络
终端led的D3口熄灭说明联网成功
组网成功后D1灯闪烁

在Zigbee中,数据包可以单点传送(unicast),多点传送(multicast)或者广播传送,传送依靠地址模式参数。
一个单点传送数据包只发送给一个设备
多点传送数据包则要传送给一组设备
而广播数据包则要发送给整个网络的所有节点

单点传送(Unicast)
Uicast是标准寻址模式,它将数据包发送给一个已经知道网络地址的网络设备。将afAddrMode设置为Addr16Bit并且在数据包中携带目标设备地址。

广播传送(broadcast)
当应用程序需要将数据包发送给网络的每一个设备时,使用这种模式。地址模式设置为AddrBroadcast。目标地址可以设置为下面广播地址的一种︰
NWK_BROADCAST_SHORTADDR_DEVALL(0xFFFF)——数据包将被传送到网络上的所有设备,包括睡眠中的设备。对于睡眠中的设备,数据包将保留在其父亲节点直到查它,或者消息超(NWK_INDIRECT_MSG_TIMEOUT在f8wConifg.cfg中)。
NWK_BROADCAST_SHORTADR_IVENIDLE(0xFFFD),也就是说,除了睡眠中的所有设备。所有在空闲时打开接收的设备(RXONWHENIDLE),也就是说,除了睡眠中的所有设备
NWK_BROADCAST_SHORTADDR_DEVZCZR(0xFFFC)——数据包发送给所有的路由器,句括协调器。

组寻址(Group Addressing)
当应用程序需要将数据包发送给网络上的一组设备时,使用该模式。地址模式设置为afAddrGroup 并且addr.shortAddr设置为组ID。
在使用这个功能呢之前必须在网络中定义组。(参见Z-stack API文档中的aps_AddGroup()函数)。
注意组可以用来关联间接寻址。再绑定表中找到的目标地址可能是是单点传送或者是一个组地址。另外,广播发送可以看做是一个组寻址的特例。

间接传送(Indirect)
当应用程序不知道数据包的目标设备在哪里的时候使用的模式。将模式设为AddrNotPresent并且目标地址没有指定。取代它的是从发送设备的栈的绑定表中查找目标设备。这种特点称之为源绑定。
当数据向下发送到达栈中,从绑定表中查找并且使用该目标地址。这样,数据包将被处理成为一个标准的单点传送数据包。如果在绑定表中找到多个设备,则向每个设备都发送一个数据包的拷贝。

协议栈的步骤
组网–发送–接收

查看部分有用的代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值