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.

[参考译文] CC2340R5:要删除指定的绑定信息

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1515682/cc2340r5-want-to-delete-specified-bonded-information

器件型号:CC2340R5

工具/软件:

尊敬的团队

我使用的是使用 SDK 8.40和 IDE 12.8的 CC2340R5。

我想通过使用 Mac 地址删除指定的绑定设备、我想列出所有绑定的设备  

请帮助我们解决这个问题。

谢谢。此致

Abinesh。 R

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

    尊敬的 Abinesh:

    Unknown 说:
    我想使用 Mac 地址删除指定的绑定设备

    您需要    将此 API 与 GAPBOND_ERASE_SINGLEBOND 作为参数一起使用。 请注意、如果要在活动连接中擦除绑定记录、还需要  使用 gapBondMgr API 并将其设置为  true 来启用 GAPBOND_ERASE_Bond_IN_CONN

    我要列出所有绑定的器件 

    为此、您必须创建已连接设备的地址列表。 然后、您可以使用 GAPBond-Addr Mgr_Find  来查看是否存在记录。 因此、完整的序列将在连接时存储的地址之间迭代、并调用  Mgr_Find Addr、如果有记录、则输出地址。

    此致、

    Nima Behmanesh

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

    嗨、Nima、

    我尝试使用下面的 API、但我仍然得到一个绑定数。 如果在我们的模块中删除绑定、则在移动端设备连接时不会显示配对弹出窗口。


    if (bonded_1==1){

    GAPBonds Mgr_Set 参数(GAPBOND_ERASE_Bond_IN_CONN、sizeof (uint8_t)、(uint8_t[]){true});
    GAPBonds mac_addr 参数(GAPBOND_ERASE_SINGLEBOND、B_ADDR_LEN + 1、mac_addr); // Mgr_Set addr 已连接设备地址
    GAPBonds Mgr_Get 参数(GAPBOND_Bond_count、&count);
    uart_app_write (&count、1);  //打印计数
    Bonded_1=0;
    }

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

    尊敬的 Abinesh:

    您在上面提供的代码、应用程序中在哪里调用? 它在单独的线程中吗?

    我会尝试在我这边重现这个,看看我是否看到类似的事情发生。

    此致、

    Nima Behmanesh

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

    嗨、Nima、

    我在单独的线程中调用。

    连接并配对后、我将发送一个 UART 命令来使用上述共享代码删除绑定的器件。

    谢谢。此致

    Abinesh

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

    尊敬的 Abinesh:

    如果要从单独的线程调用这些 API、则需要在  BLEAppUtil_invokeFunction 中绕回这些调用。 从 BLE 栈线程外部对 BLE API 的任何调用都必须使用  BLEAppUtil_invokeFunction  调用。

    "你以为你赢了吗? 我建议创建包装器:

    void my_wrapper()
    {
        // BLE APIs with parameters
    }
    
    BLEAppUtil_invokeFunctionNoData(my_wrapper);

    此致、

    Nima Behmanesh