微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > zigbee通过路由通信问题

zigbee通过路由通信问题

时间:10-02 整理:3721RD 点击:

       请教大家个问题:zigbee网络拓扑是mesh结构,协调器下面跟个路由器,路由器下面跟5个End Device,协调器通过广播模式与End Device能通信的上,但通过

点对点单播模式则通信不上,请教大侠们看看可能是什么原因?

有没有进行绑定? 单播的代码能贴出来吗?

谢谢您的回复!没有进行绑定,单播是通过串口发的数据,

通信设置如下:

     SampleApp_Periodic_DstAddr.addrMode = (afAddrMode_t)Addr64Bit; //点播

     SampleApp_Periodic_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;

     osal_memcpy(SampleApp_Periodic_DstAddr.addr.extAddr,DestMacAddrs,8);

 

通过下面的函数发送

  if ( AF_DataRequest( &SampleApp_Periodic_DstAddr, &SampleApp_epDesc,

                       SAMPLEAPP_COM_CLUSTERID,//自己定义一个

                       len+1,                  // 数据长度

                       str,                    //数据内容

                       &SampleApp_TransID,

                       AF_DISCV_ROUTE,

                       AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )

  {

 

  }

另外,如果把5个End Device 都烧成路由,同样的方式单播也能通信的上

非父节点之间的通信不能通过长地址传输

谢谢!哪里有相应的文档可以查看?

我用长地址做过好多次试验得出的结论,不能保证正确。

你可以通过长地址获取短地址,然后再发数据

路由不是用来转发的吗?长地址模式下不能实现这个功能?

谢谢!长地址是固定的,短地址是随机的,怎么通过长地址获取短地址?

我做实验得出的结论是路由不支持长地址数据转发,可能我的认知是错误的。

注册回调Nwk_Addr_rsp,

ZDP_NwkAddrReq()

case XXXXXXXCB(我忘记了你自己去找)

解析段地址

还有一种方法:快速查找lookup,你自己去找API吧

非常谢谢!我自己好好看看

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top