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.

[参考译文] CC2642R:BLE L2CAP CoC (面向连接的通道)示例

Guru**** 2540720 points
Other Parts Discussed in Thread: LAUNCHXL-CC26X2R1, CC1352R, CC1352P, CC2652RB, SYSCONFIG, CC2640R2F

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/979706/cc2642r-ble-l2cap-coc-connection-oriented-channels-example

器件型号:CC2642R
主题中讨论的其他器件:LAUNCHXL-CC26X2R1CC1352RCC1352PCC2652RBSysConfigCC2640R2F

硬件

此示例已在 LAUNCHXL-CC26X2R1上编写并测试。 它可轻松移植到 CC2652RB、CC1352R、CC1352P 器件。

软件

此示例是针对 SDK 4.40编写的。 它应轻松移植到其他 SDK 版本。 有关其他信息、请参阅 SDK 的移植指南/迁移指南。

外设

  1. 打开 CCS
  2. 导入 simple_peripheral 示例
  3. 使用 SysConfig 打开 simple_peripheral.syscfg。 然后在 RF 堆栈> BLE 中启用"L2CAP 面向连接的通道"。 保存并关闭文件。
  4. 将 simple_peripheral.c 文件的整个内容替换为该文件的内容: e2e.ti.com/.../SDK_5F00_4_5F00_40_5F00_simple_5F00_peripheral_5F00_l2cap.c。 为了帮助理解、下面是一个 diff 文件(与开箱即用的 simple_peripheral.c 文件相比): e2e.ti.com/.../simple_5F00_peripheral_5F00_diff_5F00_file.diff
  5. 构建示例并在器件上进行闪存。

位于中心地带

  1. (如果尚未完成)打开 CCS
  2. 导入 simple_central 示例
  3. 使用 SysConfig 打开 simple_peripheral.syscfg。 然后在 RF 堆栈> BLE 中启用"L2CAP 面向连接的通道"。 保存并关闭文件。
  4. 将 simple_central 文件的整个内容替换为该文件的内容: e2e.ti.com/.../SDK_5F00_4_5F00_40_5F00_simple_5F00_central_5F00_l2cap.c。 为了帮助理解、下面是一个 diff 文件(与开箱即用的 simple_central .c 文件相比): e2e.ti.com/.../simple_5F00_central_5F00_diff_5F00_file.diff
  5.  在 simple_central 菜单.c 文件中、替换该行
    menu_item_action (scMenuPerConn、0、"GATT Read"、 SimpleCentral_doGattRead) 

    作者:

    menu_item_action (scMenuPerConn、0、"从 GATT 读取 L2CAP PSM"、 SimpleCentral_doGattRead) 

    这是因为我们要将常规 GATT 读取命令重新用于 L2CAP COC 设置。

    重新编译工程并将其刷写到器件上。

使用示例

刷写这两个示例后、我建议打开两个串行终端以显示两者的日志(UART 设置与开箱即用示例相同)。

对于这些示例、您只需使用中央器件的双按钮菜单(即 launchpad 的两个按钮)。

  1. 单击"查找设备"。
  2. 单击"连接到"
  3. 选择正确的器件地址(使用外设器件的日志来查找其地址)
  4. 单击"使用"
  5. 选择合适的器件
  6. 等待加密完成、GATT 发现完成
  7. 然后将出现"Read L2CAP PSM from GATT"菜单
  8. 单击"Read L2CAP PSM from GATT"(从 GATT 读取 L2CAP PSM)(如果尚未修改 simple_central 菜单.c 文件、则可能会将"GATT Read"称为"GATT Read")

这将打开 L2CAP-COC。 然后、设备将使用它来相互发送消息。 (注意:我们使用开箱即用示例中已定义的时钟来触发消息发送-如果需要、这可以不同的方式完成)。

目前仅支持一个连接、PSM 为硬编码。

其他资源

用户指南 可能是最有价值的资源。

此外、示例 project_zero、simple_peripheral_oad_offchip 和 simple_peripheral_oad_onchip 实现了 L2CAP COC 连接的示例。

对于 CC2640R2F 器件、 此主题 提供了示例。

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

    如有疑问、请使用"提出相关问题"按钮打开新主题

    谢谢!