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.

[参考译文] CCS/CC2650RC:尝试为 cc2650rc 移植 simple_central_cc2650lp_app 项目、但未获取 BLE 初始化或其他 BLE 事件

Guru**** 2589300 points
Other Parts Discussed in Thread: CC2650RC, CC2650

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/605327/ccs-cc2650rc-trying-to-port-simple_central_cc2650lp_app-project-for-cc2650rc-and-not-getting-ble-initialization-or-other-ble-events

器件型号:CC2650RC
Thread 中讨论的其他器件: CC2650

工具/软件:Code Composer Studio

您好!

我正在尝试 ble_sdk_2_02_01_18封装将 CC2650 LaunchPad 的简单中央示例移植到 CC2650RC 远程。 为了连接、我将电路板包含更改为 CC2650RC、以便其选择正确的电路板配置文件。 我验证了它使用的是正确的板类型、因为我尝试使用切换计时器使遥控器上的红色/绿色 LED 闪烁、并且它工作正常。 但是、在以中央模式启动器件后、理想情况下、它应该会获得 GAP_DEVICE_INIT_DONE_EVENT、并且所有基本 BLE 初始化应该会开始、但发现在调试器开启后、它不会到达该位置。 因此、配置此项目或堆栈固件时出错是不正确的。

为了调试如果问题与错误的 BLE 堆栈固件有关、我尝试了 BLE SDK 中的3种不同固件。

simple_central _cc2650lp_stack -不起作用(在应用固件中、尝试根据开关输入切换 LED)

simple_central 音频接收器_cc2650lp_stack -工作(在应用固件中尝试根据开关输入切换 LED)-但应用固件中仍不会进行 BLE 初始化。

HID_Adv_REMOVE_PRIVACY_cc2650rc_stack -工作(在应用固件中尝试根据开关输入切换 LED)-但应用固件中仍不会进行 BLE 初始化。

在移植工程时、我还需要禁用 UART 显示并注释所有显示内容、否则我无法成功编译工程、因为编译器抱怨"ti/mW/display"下的某些文件、因此可能需要为此更改工程配置?

显示错误:  

未解析的符号 Display_config、首先在 C:/ti/tirtos_cc13xx_cc26xx_2_20_01_08/products/tidrivers_cc13xx_cc26xx_2_20_01_10/packages/ti/mw/display/lib/display.aem3中引用

那么、请有人帮助我解决这个问题吗? 提前感谢!

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

    我已禁用 Display.h 驱动程序文件本身中的显示以消除上述显示错误、因为我猜测即使使用 Debugger DevPack、CC2650RC 也不支持 UART/LCD 显示! 感谢 Dave Beal 在 一个论坛主题中发布此解决方案、以解决频繁的断开连接问题。 我不知道最近的 BLE 堆栈是否仍然存在该问题、但仍然存在主要问题(未收到 BLE 事件)。 最后、我还需要 CC2650RC 的 UART 调试打印件、因此应该有一些替代解决方案。

    显示错误修复是将"#define Display_disable_all 1"添加到 TI-RTOS 中的 Drivers/Display/Display.h 文件的顶部

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

    它可能与板级配置文件发生冲突。 尝试禁用板级配置文件中除 LED 之外的所有 IO、并禁用尝试访问 IO 的任何代码、例如默认 simple_central 应用程序中的 Button IO。 如果仍然遇到问题、请尝试使用调试器查看代码的停滞位置。

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

    谢谢、但我已经禁用了 launchpad 的所有 IO 密钥相关代码、我正在使用 key_scan.h/key_scan.c 和 kb.h/kb.c 库来实现远程密钥功能。 我在 simple_central_lp 代码中所做的是、将左/右按钮替换为 RC_SW_LF_ARW/RC_SW_RT_ARW 按钮、并保留相同的处理程序代码、以便在按下 RC_SW_LF_ARW 按钮时、它将开始扫描设备并切换绿色 LED。 它可以做到这一点、但在按下该键之前、它应该默认通过显示红色 LED 亮起进入空闲状态、但由于未收到任何 BLE 事件、它没有做到上述操作。 我也打开了调试器,并确保它成功通过 SimpleBLECentral_init()函数,这就是为什么所有 Keys/LED 代码及其扫描切换器正常工作的原因。 但请注意、按下左键后、绿色 LED 将开始闪烁、并且它永远不会停止、因为它永远不会终止 BLE 扫描事件、因此它永远不会再次进入空闲状态。

    我已经尝试在 SimpleBLECentral_processRoleEvent()函数中设置断点,并查看它是否正在获得任何 GAP_DEVICE_INIT_DONE_EVENT/GAP_DEVICE_INFO_EVENT/GAP_DEVICE_DISCOVERY 事件,但没有获得这些事件。 那么、现在我甚至不知道我的调试技巧、如何知道为什么只有 BLE 事件没有发生、其他操作系统代码运行正常、而不会在任何位置卡住?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    有没有人可以为 CC2650RC 提供一个简单中央设备(执行扫描设备及其连接等基本操作)的工作示例代码、我可以将其用作参考? 因为我已经尝试了 CC2650RC 的 simple_central_cc2650lp_app 代码、它无法根据需要工作。 如果有任何帮助、我们将不胜感激!

    谢谢!