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.

[参考译文] CC2340R2:从 CC2340R5 迁移到 CC2340R2 时出现 BLE 错误

Guru**** 2419530 points
Other Parts Discussed in Thread: CC2340R5, CC2340R2, SYSCONFIG

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1531581/cc2340r2-ble-error-when-migrating-from-cc2340r5-to-cc2340r2

器件型号:CC2340R2
主题中讨论的其他器件:CC2340R5SysConfig

工具/软件:

您好:  

我目前正在处理一个使用 CC2340R2 的工程。 我使用的代码基于示例工程 Basic BLE、可在 CC2340R5 上正常运行。 但是、迁移到 CC2340R2 时会遇到迁移指南中未说明的问题。 我收到以下错误


  “资源“:“file://c%3A/users/admin/workspace_ccstheia/Basic_BLE_R5_final_R2_no_pins_copy“、
  “owner":“:“ccs-client",“,</s>、
  “严重程度“:1、
  “消息“:“/ti/ble/ble:尝试更改不存在的设置“$name"。“。 单击此处确认并取消此错误。 这很可能是由于电路板或器件的差异造成的。  “、
  “startLineNumber":“:0、
  “startColumn":“:0、
  “endLineNumber":“:0、
  “endColumn":“:0
}

我不知道设置是什么以及如何更改它。 由于错误消息中给出的路径 ti/ble/ble、我在蓝牙论坛中弹出此错误。  

感谢您的帮助:)

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

    您好!

    此错误是由于迁移工具无法将 CC2340R5 的 SysConfig 文件转换为 CC2340R2 的 SysConfig 文件。 使用 CCS 打开 SysConfig 时、您将看到一个图形界面以简化用户体验、但如果在常规文本编辑器中查看 SysConfig、则可以看到易于编辑和可分析的 SysConfig 版本。

    在这里、迁移脚本可能正在查找具有$name 的属性、但找不到该属性。 更具体地说、BLE 模块没有$name 字段。

    可能的修复方法是确保您的设备在 SysConfig 中有一个名称、在最坏的情况下、通过添加以下行自行添加$name 字段:

    ble.$name = "BLE device"

    此致、
    Maxence

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

    感谢您的快速答复。 我按照您的建议添加了代码行。 现在我收到另一个错误:


      “资源“:“file://c%3A/users/admin/workspace_ccstheia/Basic_BLE_R5_final_R2_no_pins_copy“、
      “owner":“:“ccs-client",“,</s>、
      “严重程度“:1、
      “消息“:“无法将“$name"设置“设置为“BLE device“:禁止修改:此实例中已修复$name “、
      “startLineNumber":“:0、
      “startColumn":“:0、
      “endLineNumber":“:0、
      “endColumn":“:0
    }

    问题是、这个实例的固定名称是什么? 我还尝试使用自动归属于同一文件的设备名称

    ble.deviceName =“BLE R2“

    但随后得到相同的误差。

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

    您好!

    我尝试将 Basic_BLE 示例从 CC2340R5 移植到 CC2340R2、遇到了与您相同的错误。 我想您在我们的迁移工具中发现了一个错误、我会立即报告。

    同时,您能告诉我您正在运行哪些命令迁移您的项目吗? 由于我使用 SysConfig 的图形界面、因此输出不会与您完全相同、因此我想确保我遇到与您相同的错误。

    一种权变措施是使用 CCS Theia 的图形界面使 SysConfig 迁移工程。 你可以做的是以下的:

    -在 CCS Theia 中打开您的项目
    -打开 SysConfig 文件
    -点击右上角的 CHIP 按钮打开设备视图

    -在设备视图中单击“切换“

    -在迁移设置中选择正确的电路板(如果您使用 RGE 封装为 CC2340R2,如果使用 RKP 封装为 CC2340R2)

    -当看到关于“名称“字段不存在的错误时,您可以点击“这里“按钮来消除错误并修复它。

    我希望此解决方法对您有用。 请不要忘记发送用于迁移项目的命令或方法,以便我们可以为其他用户解决此问题!

    此致、
    Maxence

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

    您好、Maxence、

    感谢您的快速答复。  

    SysConfig 的图形界面进行了迁移。

    我使用了以下迁移设置:

    Board -> None(我们使用定制板,无 Devkit)
    器件-> CC2340R2
    封装、然后自动更改为 VQFN (RGE)
    锁定资源分配保持选中状态
    按确认

    使用 Basic-BLE-Example 执行此操作时、我会得到一些与 R5 中存在但 R2 中不存在的 GPIO 相关的错误、以及我在第一篇文章中提到的错误。 定制软件中不存在 GPIO 错误、因为我没有在该软件中使用 GPIO、所以只剩下上面的错误。  

    排除错误是我尝试的第一件事,但然后项目无法正确构建,而是我得到以下错误:


      “资源“:“file://c%3A/users/admin/workspace_ccstheia/My_ble_3“、
      “owner":“:“ccs-client",“,</s>、
      “严重程度“:1、
      “消息“:“#10099-D:程序将无法放入可用的存储器中、或者该段包含一个调用点、该调用点需要无法为该段生成的蹦床函数、或者该段包含填充函数。 对于大小为 0xeba 的段“.data\",“,带、带对齐的运行放置失败。  可用内存范围:“、
      “startLineNumber":“:0、
      “startColumn":“:0、
      “endLineNumber":“:0、
      “endColumn":“:0
    }

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

    您好、

    我认为从 RKP 自动切换到 RGE 是意外的。 您正在使用 RGE 或 RKP 的 CC2340R2 软件包是什么? 如果软件包为 RKP、您必须在迁移弹出窗口中选择 RKP。

    如果您不确定 CC2340R2 MCU 的封装、RGE 和 RKP 之间的主要区别在于其尺寸:RGE 每侧有 6 个“引脚“、而 RKP 有 10 个“引脚“。

    此致、
    Maxence

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

    你好,好的包装帮助了。 我可以成功地将 basic_ble 工程迁移到 R2 RKP 变体。 我可以刷写并启动它、然后使用调试器、我可以看到它在 main_freertos.c 中运行 main () 函数  

    但是、将 BLE 测试工具用于智能手机时、我看不到广播其 BLE 接口的项目、就像迁移之前在 R5 评估板中所做的那样。  

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

    仍然很有用  
    https://dev.ti.com/tirex/explore/node?node=A__AcrwHdZt.SBRoZj0q1LDWQ__SIMPLELINK-ACADEMY-CC23XX__gsUPh5j__LATEST
    我建立了一个小程序,使用 empty.c 中的附加线程读取传感器数据,并通过自定义蓝牙接口传输。 此程序可在 R5 评估板上成功运行。 当我将其迁移到芯片的 R2 型号时、调试器不会在 empty.c 文件中 mainThread 中的断点处停止。  

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

    您好!

    很好、至少您能够在 SysConfig 中迁移工程。

    您似乎有多个问题。 首先、您能否在不对 R5 板进行任何更改的情况下尝试导入常规 basic_ble 工程、并将其移植到 R2 板、然后确认您无法正确调试软件、并且无法像使用 R5 一样看到 BLE 广播?

    此致、
    Maxence

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

    -我使用项目向导创建基本 BLE 项目

    -我将设备更改为 R2 RKP

    -我排除发生的错误(更改设置名称)

    -我成功地建立了这个项目

    -我开始调试,程序被加载到器件上,程序就在 main () 处停止,我可以单步执行程序

    -我按继续,让程序运行,程序不作广告  

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

    您好!

    遗憾的是、在 CC2340R53 上重现上述确切步骤后、我看不到您遇到的问题。 您能否确认 R5 评估板上也会发生这种情况?

    此致、
    Maxence

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

    使用 R5 评估板时、广播是有效的、我可以使用蓝牙传输数据

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

    您好、

    实际上、将工程从 CC2340R5 移植到 CC2340R22 需要进行更多更改。
    您可以 在 BLE 用户指南中找到相应的迁移指南

    您是否可以尝试遵循本指南并告诉我您是否还有其他问题?

    此致、
    Maxence