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.

[参考译文] CC1352R:启用 ICall 模块时、执行时间显著增加

Guru**** 2387830 points
Other Parts Discussed in Thread: CC1352R, BLE-STACK
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1428306/cc1352r-significantly-increased-execution-time-when-the-icall-module-is-enabled

器件型号:CC1352R
Thread 中讨论的其他器件: BLE-STACK

工具与软件:

您好!

我们将使用 CC1352R 开发新的器件。 该工程基于 SDK simplelink_cc13xx_cc26xx_sdk_7_41_00_17中的示例工程"simple_broadcaster "。  

对我们来说、最重要的是能够尽可能降低电流消耗的器件。 它由器件的静态电流消耗和 MCU 处于工作模式时的动态电流消耗定义。

我们注意到、启用 ICall 模块后、执行时间会显著增加。 我们的平均电流消耗几乎翻了一番。 我们使用示例项目"simple_broadcaster "(启用和未启用 ICall 模块)进行了非常简单的测试。 启用 ICall 模块后、总时间为950us、未启用 ICall 模块时、总时间为574us。 请参阅随附的图片。

由于我们在不使用 BLE 的情况下具有很长的时间间隔(例如5、10分钟)、因此我们的问题是能否以某种方式暂停或禁用 ICall 模块以及尽可能缩短执行时间?

1.没有 ICall 时的执行时间

2. iCall 系统的执行时间

非常感谢您的回答。

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

    嗨、Angel、

    我需要更多关于您尝试执行的操作的信息。

    如果您想使用 BLE API、则必须使用 ICall。 应用程序中没有可禁用它的 API。
    如果 间隔时间较长、不需要使用器件、则可以将其置于待机或关机模式以节省能源。

    如果您想初步了解如何发送 BLE 数据包、可以查看 SDK 中的 rfDualModeTx_CC1352R1项目。

    此致、
    等等

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

    尊敬的 Theo Lange:

    主 MCU 始终处于待机模式。 但每250ms 有一个来自 RTC 时钟的唤醒事件。 这是项目要求。 无法避免。

    在很短的时间内、MCU 处于工作模式、然后再次处于待机模式。 问题在于总平均电流消耗量是由 RTOS 任务的执行时间和我们的执行时间定义的。 请参阅随附的图片。 当 ICall 模块启用时、该唤醒时间加倍(最高1ms)。 这会使我们的总平均电流消耗增加近100%。 这就是为什么、我的问题是、是否有可能以某种方式暂停 ICall 模块、或者至少尽可能缩短在执行代码之前从 RTOS 唤醒的时间?

    同样、我们对示例项目进行了2项非常简单的测试-有无 ICall 模块。 两个项目都有一个 RTOS 任务。 在第一个项目中、唤醒时间约为400-500us。 在使用 ICall 模块的第二个项目中、该时间为1ms。 即使我们的主周期/线程没有任何应用代码、这也会增加电流消耗。

    此致、

    天使

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

    嗨、Angel、

    如果您需要运行蓝牙低功耗堆栈、则无法将其删除。

    但如果只发送信标、则可以直接使用射频驱动器。 这将为您节省大量的处理能力、而不仅仅是在唤醒时。 您可以在参考的示例 theo (rfDualModeTx)中看到一个代码示例。

    https://dev.ti.com/tirex/explore/node?node=A__AOe1Ch-3wUtavdKBHB4ZCQ__com.ti.SIMPLELINK_CC13XX_CC26XX_SDK_PROPRF_MODULE__BSEc4rl__LATEST&placeholder=true

    谢谢、

    Marie H.

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

    尊敬的 Marie H:

    感谢您的响应。 好建议,但它对我们没有用处。 我们的器件可以选择进入 BLE 连接模式、以进行固件更新或设置。 没有完全的幸福。

    我的最后一个问题。 我只能看到一个可能的选项。 因为在没有 BLE 传输的情况下、我们有非常长的时间间隔(5分钟、10分钟甚至更长)、以便停止所有 BLE 任务并取消初始化 ICall 模块、并在下次需要 BLE 功能时再次进行初始化。 是否可以做到、即使没有任何 API 函数也是如此?

    谢谢、

    天使

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

    嗨、Angel、

    我认为我们没有适用于 BLE-Stack 的"关闭"API、因此在要启动 BLE-Stack 时需要重新启动整个器件。

    谢谢、

    Marie H.