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.

[参考译文] CC2640:GAPCentralRole_EstablishLink()详细信息?

Guru**** 2560390 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/585316/cc2640-gapcentralrole_establishlink-details

部件号:CC2640

快速了解BLE堆栈:我们需要尽快将中心连接到固定/已知的4个外围设备组,最好是在从每个设备收到的第一个AD上连接。

我看到GAPCentralRole_EstablishLink使用"白名单"标志。 在文档中,这被描述为"确定白名单的使用"。 我假设这意味着至少要看到的第一个白名单设备将链接到,但是...

  •  是否必须在链接第一个设备后再次调用GAPCentralRole_EstablishLink,或者“建立链路”状态是否保持活动状态,以便连接到其它外围设备?
  • 如果在与一台设备建立链接的同时,其他白名单设备进行广告宣传,会发生什么情况? 是否只是忽略了它,或者堆栈是否可以同时建立多个链路?
  • 如果whitelist == true,则addrTypePeer和peerAddr参数是否完全忽略? 或者他们是否需要一些默认值/NULL值?
  • 是否对您的堆栈状态(状态)进行了高级概述/描述? 例如,显示"建立链接"和"发现"是排他性状态。

谢谢

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

    白名单与地址类型无关。 您可以在BT核心规格第6卷(LE控制器)中阅读有关白名单的更多信息。 建立连接后,链路建立过程将完成,因此您需要再次调用API以设置另一个连接。

    API的使用遵循核心规范MSCS进行链路建立。

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

    感谢您的支持。 我将根据您提到的内核规格重新回答我关于您的堆栈状态的问题。 [版本6。 第B部分1.1 “链路层状态”。

    系统启动延迟对我们来说至关重要,因此我希望根据明智的对讲机共享/计划/优先级,同时发起(从白名单)和扫描。

    规范定义了LL状态机(待机,广告,扫描,启动,连接)。 该规范明确允许此statemachine的多个实例。

    您的堆栈支持并发扫描和多个连接。 因此,我推断您的堆栈支持多个LL状态机(根据规范)。

    如果你可以告诉我这些LL statemachine的实例是如何在你的API中暴露的,我应该能够使用其中的两个:一个用于扫描,另一个用于同时启动。

    谢谢