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:间歇性 bleNotConnected(错误 20)且带 GATT_WriteNoRsp

Guru**** 2837190 points

Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1625613/cc2340r5-intermittent-blenotconnected-error-20-with-gatt_writenorsp

器件型号: CC2340R5
主题: SysConfig 中讨论的其他器件

尊敬的 TI 支持团队:

客户已针对其应用修改了 TI 示例代码。 在相同的测试操作和条件下、它们在调用 GATT_WriteNoRsp 时观察到间歇行为:

问题描述:

  • 大约 50%的时间、 GATT_WriteNoRsp 返回错误代码  20 (bleNotConnected)

  • 大约 50%的时间时、 GATT_WriteNoRsp 会返回  成功

  • 如果连接了 JTAG、则 GATT_WriteNoRsp 始终返回成功。

此时、客户怀疑问题可能与时序有关或取决于状态、因为在连接 JTAG 调试器时、行为会发生显著变化(这可能会阻止 MCU 进入低功耗状态)。

开发环境:

  • SDK:  SimpleLink 低功耗 F3 SDK v9.11.0.18

  • SysConfig:  1.23.2.

  • CCS 版本:  20.4.0.13__1.10.0

 

从 TI 申请支持:
客户希望 TI 在以下方面提供帮助:

  1. 对这种间歇行为的分析。

  2. 可能的根本原因、尤其是 JTAG 已连接与已断开连接之间的差异。

  3. 可能的对策、权变措施或修复措施。

  4. 有关进一步调试或验证该问题的任何其他建议。

您能回顾一下他们的情况并提供您的见解吗?

如果您需要任何代码片段、监听器跟踪或日志、请告诉我。

感谢您的及时帮助!

此致、

Mike Wu

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

    尊敬的 Mike:

    感谢您发送编修。 我将会对此进行深入研究。 但是、我有几个问题:

    1. 客户使用什么示例作为基础?
    2. 如果有任何代码片段(和日志)可以帮助我重现问题、这也会带来很大帮助。
    3. 使用什么调试器? 是 XDS110 吗?

    此致、

    Ging

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

    尊敬的 Mike:

    感谢您联系我们。 我最初认为该问题也与时序或电源转换有关。 启用 JTAG 在运行时产生的影响主要是器件不会进入待机模式、这可能会影响一些时序行为。 您是否在应用中使用了时钟或计时器?

    此致、

    1 月

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

    尊敬的 Jan:

    我在系统中使用了计时器 (createtimer)、但在没有响应的写入期间、它不会启用。

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

    尊敬的 Jan:

    使用调试板并调试运行它通常可以。 仅连接调试板而不进行调试运行也会失败。

    谢谢

    兰迪

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

    您好、Jan、

    我尝试运行失败,然后将其与调试板“Connect Target“连接,并发现所有全局值都已重置。 似乎它有一个软件复位并导致断开连接。 我想软件复位不是来自 BLE 任务。 使用我们的命令 IF 从 SPI 接口。 CC2340 是 SPI 从器件。 我想它来自 SPI。  如果 CC2340 没有准备 SPI  (不调用 SPI_Transfer 函数)但主器件发送了命令、它是否会导致软件复位?

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

    您好、

    这很奇怪。 我不希望 SPI 驱动器会引起复位。 这是在 LaunchPad 上发生的吗?

    此致、

    1 月

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

    您好、Jan、

    如果使用 LaunchPad 运行调试、则不会进行复位。 它导致了一些调试问题。 您可以用任何方法来调试它。

    谢谢

    兰迪

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

    尊敬的 Randy:

    通常、在这些情况下、如果可能、最好使用 UART 进行调试。 您的应用程序中是否启用了看门狗>

    此致、

    1 月