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.

[参考译文] RTOS/CC2640:Power_Saving 未按预期工作

Guru**** 2589280 points
Other Parts Discussed in Thread: CC2640

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/603620/rtos-cc2640-power_saving-not-working-as-expected

器件型号:CC2640

工具/软件:TI-RTOS

大家好、

我使用的是 TI RTOS v2.20和 cc2640 5x5 (LSR Sable-X)

我使用 simple_peripheral 示例构建了一个应用。 除了默认 SBP 任务外、我还添加了另一个任务。 因此、有两个任务正在运行。 我将在预定义符号中使用 power_saving。 此外,在 BIOS_start()之前,我在 main.c 文件中调用了 Power_init()和 Power_enablePolicy()。

我以+5dBm 运行器件、RX/TX 期间的峰值电流约为12mA。 但是、当应用中的两个任务都处于睡眠状态时、消耗的电流为3mA。 我无法在待机模式下获得低电流。  

我已经阅读了 TI RTOS docs 文件夹中的电源管理手册、 并使用电源策略的默认实现。  

我希望器件进入待机模式。 从我现在得到的电流读数来看、它看起来不像器件处于待机模式

请帮助我还应该做些什么来确保器件处于待机模式?  

等待您的回复

谢谢、

Sandeep

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

    当定义了 POWER_SAVY 并且没有其他任务要运行时、器件应该自动进入待机模式。 因此您无需调用任何 Power 函数,即 Power_init()和 Power_enablePolicy()。

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

    您好、Zahid、

    我已在工程编译设置的预定义符号中定义 power_saving。

    "没有其他任务在运行时"的具体含义是什么?

    在 simple_peripheral 项目的 main.c 中、有一个优先级为5的任务(iCall_createRemoteTasks)和一个优先级为3的任务(GAProle_task)。  在我的应用程序中、我有默认 SBP 任务和另一个任务、它们都以优先级2运行。

    我在这两个任务中调用 Task_sleep。 但是、如何确保优先级5和优先级3任务停止/闲置/睡眠?

    请帮助。

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您不需要使用 task_sleep、因为一旦任务(在 main.c 中创建)完成处理、空闲任务就会运行(在后台)、然后将器件置于睡眠/待机模式。 然后、它会根据触发的中断和计时器超时自动唤醒。

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

    但我必须在其中一个与 ADC 连接的任务中使用任务睡眠()。  

    此外、我是否应该终止 BLE 连接以使器件进入待机模式?