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.

[参考译文] CC2640R2F:帮助跟踪 TI-RTOS 看门狗复位

Guru**** 2617815 points

Other Parts Discussed in Thread: CC2640R2F

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1175184/cc2640r2f-help-tracking-down-ti-rtos-watchdog-resets

器件型号:CC2640R2F

我使用的是一款低功耗器件、该器件具有运行 TI-RTOS 和 BLE 的 CC2640R2F 芯片。 我在路径中看到了2.40.00.32的 SDK 版本、但我不确定哪个组件适用。

我遇到了随机发生但通常在启动后12小时内发生的看门狗复位问题。 在某些器件上、它在启动后不久发生。 在它发生后、它可能会重复发生一段时间。

我无法通过 CCS 9.01或9.3进行可靠调试、但使用串行打印时、我发现调用 iCall_waitMatch 时出现了 iCall.c 函数 iCall_directAPI 问题。 在出现故障的情况下、waitMatch 超时、进入中止或无限循环、并等待看门狗。

出现此问题的一般流程为:
- SPO_UPDATE_AD
- GAPROLE_GOVE_DATA
- GAP_UpdateAddisingData [iCall_directAPI]
- GAP_ADV_DATA_UPDATE_DONE_EVENT
- GAP_UpdateAddisingData (这次用于扫描响应数据)

对 GAP_UpdateAddertisingData 的两个调用似乎相互干扰。 但这对我来说是没有意义的、因为第二个似乎在第一个"完成"回调事件之后被调用。

此外、iCall_send 中的 ICALL_SYNC_Handle_post 是否执行上下文切换? 我有时会看到该函数会执行到该点、而不会进一步执行。 尽管在某些调试运行中、串行打印也可能相互干扰。

如何进一步调试? 我可以监控进出队列的消息吗?

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

    您好!

    感谢您与我们联系。 我们将研究所提供的信息、并尽快做出响应。 同时、您能否澄清项目所基于的示例项目(如果有)? 2.40 SDK 是在相当长的一段时间之前发布的、如果可能、我强烈建议您尽可能使用最新的 SDK。 用户指南中提供了迁移指南、可帮助完成此过程。

    此致、

    1月

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

    我找不到示例项目的列表,但我认为它基于 simple_peripheral_cc2640r2lp_oad_onchip_stack。 我可以尝试更新 SDK、但闪存空间有限。

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

    您好 Erik、

    很抱歉您遇到了此问题。 我们的调试器指南中提供了一些有关 iCall 的调试提示。 为了确保您已禁用看门狗进行调试吗? 另外一个非常快速的排除方法是确保堆没有内存问题(请参阅调试器指南以了解如何启用此功能、即定义 HEAPMGR_METER统计)。

    [引用 userid="545409" URL"~/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1175184/cc2640r2f-help-tracking-down-ti-rtos-watchdog-resets ]GAP_UpdateAddertisingData 的两个调用似乎相互干扰。 [/报价]

    您能否注释掉第二次更新广播数据的尝试、以查看是否可以重现此问题? 我建议使用来自 REPO 的示例项目尝试此序列事件、这将有助于缩小范围。

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

    您好 Erik、

    上电或复位后、您可以将复位原因保存在 SNV、然后使用蓝牙特性访问该数据。

    -kel