主题中讨论的其他器件: SysConfig
大家好、TI 团队。
我将使用 CC2340R5作为通过也是 CC2340R5的外设进行透明传输的中央器件。 外设每500ms 向中央设备发送大约30字节的数据、此时 MTU 的最大值为251字节。
当中央设备接收到约1800个字节的数据时,中央设备似乎不再接收外围设备发送的数据,外围设备继续发送数据。 我尝试过几次,同样的结果。
下面的代码是最终接收数据并通过串行端口打印到 PC 的位置。

我的同事遇到了同样的问题。
此致、
Joey。
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.
大家好、TI 团队。
我将使用 CC2340R5作为通过也是 CC2340R5的外设进行透明传输的中央器件。 外设每500ms 向中央设备发送大约30字节的数据、此时 MTU 的最大值为251字节。
当中央设备接收到约1800个字节的数据时,中央设备似乎不再接收外围设备发送的数据,外围设备继续发送数据。 我尝试过几次,同样的结果。
下面的代码是最终接收数据并通过串行端口打印到 PC 的位置。

我的同事遇到了同样的问题。
此致、
Joey。
Luke、您好!
您是对的。 出现这种情况的原因是缓冲区没有被清除。 当我将 GATT_BM_FREE (&(gattMsg->msg)、gattMsg->method)添加到 GATT_eventhandler 函数的末尾以释放缓冲区时、当前不会发生上述情况。
顺便说一下、我在一段时间前发现了一个问题。 在 ATT_MTU_UPDATED_EVENT 中、 MTU 的实际更新值不是((attMtuUpdateEvt_t *) pMsgData)-> MTU 指向的值。 该值始终固定为176。 正确的值应该是 gattMsg->msg.mtuEvt.mtu 指向的值。

我正在使用的 SDK 版本是 simplelink_lowpower_f3_SDK_7_20_01_10。
此致、
乔伊