微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > zstack的ZIGBEEPRO协议中,默认的可以加入设备数量是不是20个

zstack的ZIGBEEPRO协议中,默认的可以加入设备数量是不是20个

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

我看到的程序如下:

1、在nwk_globals.h中

    #if ( STACK_PROFILE_ID == ZIGBEEPRO_PROFILE )

           uint8 CskipRtrs[1] = {0};

           uint8 CskipChldrn[1] = {0};

     #elif ( STACK_PROFILE_ID == HOME_CONTROLS )

           uint8 CskipRtrs[MAX_NODE_DEPTH+1] = {6,6,6,6,6,0};

           uint8 CskipChldrn[MAX_NODE_DEPTH+1] = {20,20,20,20,20,0};

            。。。。。。。。。

2、在nwk_globals.c中

     #if !defined( NWK_MAX_DEVICE_LIST )

        #define NWK_MAX_DEVICE_LIST     20

   #endif

 

    #if ( STACK_PROFILE_ID == ZIGBEEPRO_PROFILE )

         #define MAX_NODE_DEPTH      20

         #define NWK_MODE            NWK_MODE_MESH

         。。。。。。。。

以上两处定义了如果是ZIGBEEPRO协议,最大深度为20,最大关联表数量为20,但uint8 CskipRtrs[1] = {0};  uint8 CskipChldrn[1] = {0};这两个却定义第二级可挂载路由器和终端都为0,是不是就说明ZIGBEEPRO协议默认可挂载设备数量只能为20,,即关联表的数量。

我的疑惑是不知道是不是我想的这样的,或者在其他地方还有另外设置?

  

    

您是可以自己定义网络深度及最大节点数量的

是不是修改这个两个uint8 CskipRtrs[1] = {0}; uint8 CskipChldrn[1] = {0};即可;改成这样uint8 CskipRtrs[MAX_NODE_DEPTH+1] = {6,6,6,6,6,0}; uint8 CskipChldrn[MAX_NODE_DEPTH+1] = {20,20,20,20,20,0};可以吗。

是的,在协议栈中,有以下几个参数影响网络拓扑的形态:

Cm(nwkMaxChildren):每个父节点可以连接的子节点的总个数;

Rm(nwkMaxRouters):在Cm中,可以是路由节点的个数,Rm<=Cm;

Lm:网络最大深度,协调器的深度为0。

这三个参数的值在Z-stack中分别由变量CskipChldrn、CskipRtrs、MAX_NODE_DEPTH决定。这三个变量可以在NWK中的nwk_globals.c 和 nwk_globals.h 两个文件中查找

哦。谢谢。

修改这个两个uint8 CskipRtrs[1] = {0}; uint8 CskipChldrn[1] = {0};后, 还属于ZIGBEEPRO协议吗。

在ti的Z-Stack Developer‘s Guide中,有说这样一句话 After choosing legal values, the developer needs to ensure not to use the standard stack profile and instead
set it to network-specific (i.e. change the STACK_PROFILE_ID in “nwk_globals.h” to NETWORK_SPECIFIC) because the values are different from the values defined for the ZigBee profile. Then the MAX_DEPTH parameter in “nwk_globals.h” may be set to the appropriate value.  

说不能再用ZIGBEEPRO协议, 而要改成NETWORK_SPECIFIC协议了。

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

网站地图

Top