This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] LAUNCHXL-CC26X2R1:Util_Assoc_Get_With _address SRSP 格式问题

Guru**** 2466550 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1129035/launchxl-cc26x2r1-util_assoc_get_with_address-srsp-format-question

器件型号:LAUNCHXL-CC26X2R1

您好!

我使用 的是 fe0a274a db0625001044ef54 0000 70 (UTIL_Assoc_get_with _address)。  db0625001044ef54是我的器件的 IEEE 地址(MSB/LSB 交换)。 我得到以下答案:

fe24674a 769b 0400040800000601aa0000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff 41.

769b  是我的短地址(0x9b76),所以命令基本上是可以的

格式/长度与文档不匹配。

"0400040800000601aa0000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"(devices_t 结构)内返回的其他信息是什么?

谢谢、

Robert

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Robert、

    您可以查看  ZNP 项目的 MT_UtilAssocGetWithAddress -> packDev_t 函数、以进一步了解返回的内容。

    /***************************************************************************************************
     * @fn      packDev_t
     *
     * @brief   Pack an associated_devices_t structure into a byte buffer (pack INVALID_NODE_ADDR if
     *          the pDev parameter is NULL).
     *
     * @param   pBuf - pointer to the buffer into which to pack the structure.
     * @param   pDev - pointer to the structure.
     *
     * @return  void
     ***************************************************************************************************/
    static void packDev_t(uint8_t *pBuf, associated_devices_t *pDev)
    {
      if (NULL == pDev)
      {
        uint16_t rtrn = INVALID_NODE_ADDR;
        *pBuf++ = LO_UINT16(rtrn);
        *pBuf++ = HI_UINT16(rtrn);
      }
      else
      {
        *pBuf++ = LO_UINT16(pDev->shortAddr);
        *pBuf++ = HI_UINT16(pDev->shortAddr);
        *pBuf++ = LO_UINT16(pDev->addrIdx);
        *pBuf++ = HI_UINT16(pDev->addrIdx);
        *pBuf++ = pDev->nodeRelation;
        *pBuf++ = pDev->devStatus;
        *pBuf++ = pDev->assocCnt;
        *pBuf++ = pDev->age;
        *pBuf++ = pDev->linkInfo.txCounter;
        *pBuf++ = pDev->linkInfo.txCost;
        *pBuf++ = pDev->linkInfo.rxLqi;
        *pBuf++ = pDev->linkInfo.inKeySeqNum;
        OsalPort_bufferUint32( pBuf, pDev->linkInfo.inFrmCntr );
        *pBuf += 4;
        *pBuf++ = LO_UINT16(pDev->linkInfo.txFailure);
        *pBuf++ = HI_UINT16(pDev->linkInfo.txFailure);
      }
    }

    似乎存在 addrIdx 0004、nodeRelation 04 (child_FFD_RX_IDLE)、devStatus 08 (DEV_SEC_AUTH_STATUS)、assoccnt 00、age 00、 txCounter 06、txCost 01、rxLqi 0xAA、inKeySeqNum 00、inFrmCntr 00、 和 txFailure 0000。  我不确定 额外0xFF 字节背后的原因。

    此致、
    Ryan