微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 关于组播的两个问题,删除组和改组的,求大神

关于组播的两个问题,删除组和改组的,求大神

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

在我的代码中

想以这种方式改设备在的组:

case 0x10:
            aps_RemoveAllGroup(SampleApp_TransID);                                      //删除之前的组
           Donghe_Group_DstAddr.addrMode = (afAddrMode_t)AddrGroup;    //重新配置组
           Donghe_Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
           Donghe_Group_DstAddr.addr.shortAddr = Donghe_Group_1;
           Donghe_Group.ID = Donghe_Group_1;
           osal_memcpy(Donghe_Group.name,"Group 1",7);
           aps_AddGroup(SAMPLEAPP_ENDPOINT,&Donghe_Group);
     break;
case 0x20:
          aps_RemoveAllGroup(SampleApp_TransID);
         Donghe_Group_DstAddr.addrMode = (afAddrMode_t)AddrGroup;
         Donghe_Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
         Donghe_Group_DstAddr.addr.shortAddr = Donghe_Group_2;
         Donghe_Group.ID = Donghe_Group_2;
         osal_memcpy(Donghe_Group.name,"Group 2",7);
         aps_AddGroup(SAMPLEAPP_ENDPOINT,&Donghe_Group);
      break;
case 0x40:
        aps_RemoveAllGroup(SampleApp_TransID);
        Donghe_Group_DstAddr.addrMode = (afAddrMode_t)AddrGroup;
        Donghe_Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
        Donghe_Group_DstAddr.addr.shortAddr = Donghe_Group_3;
        Donghe_Group.ID = Donghe_Group_3;
        osal_memcpy(Donghe_Group.name,"Group 3",7);
        aps_AddGroup(SAMPLEAPP_ENDPOINT,&Donghe_Group);
   break;
case 0x80:
       aps_RemoveAllGroup(SampleApp_TransID);
       Donghe_Group_DstAddr.addrMode = (afAddrMode_t)AddrGroup;
       Donghe_Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
       Donghe_Group_DstAddr.addr.shortAddr = Donghe_Group_4;
       Donghe_Group.ID = Donghe_Group_4;
       osal_memcpy(Donghe_Group.name,"Group 4",7);
       aps_AddGroup(SAMPLEAPP_ENDPOINT,&Donghe_Group);
   break;
default:
break;

结果我发现    根本不行    就算执行了,并不是更改了,而是多配置了一个组,能收到新配置的组和之前配置的组的消息。

而且我试了一下   仅仅用按键执行   aps_RemoveAllGroup(SampleApp_TransID);    发现还是能收到组的消息,为什么?  这个函数还有存在的意义?

请问你是在哪个协议栈版本上做的操作?

aps_RemoveAllGroup( uint8 endpoint )

这个函数的参数如果是端口号,不是transID。

端口号的意思应用程序的接口,类似于TCPip的接口

谢谢你   这是我的失误,把transID错看成endpoint

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

网站地图

Top