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.

[参考译文] CC1310:是否会将 CC1310置于睡眠模式?

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1269393/cc1310-will-this-put-cc1310-to-sleep

器件型号:CC1310
主题中讨论的其他器件:ENERGYTRACE

您好、TI 团队、

如果我创建了一个线程、并且它只是一个包含 Task_sleep (sleep_time)函数的 while 循环、这会使控制器进入睡眠状态吗? 控制器是否会每 Sleep _Time 唤醒一次?

void* mainThread(void *arg0)
{
    while(1)
    {
        Task_sleep(sleep_time);
    }
}

我还注意到、当我在 while 循环中删除 Task_sleep 时、功耗会非常高。 TI RTOS 如何知道控制器是否空闲并应进入睡眠状态?

谢谢。

Og

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

    您好、OG:

    假设您正在使用 TI RTOS、并推断这是您在芯片上运行的唯一线程、但此线程确实只允许器件进入睡眠状态。

    如果您有任何疑问、可以使用我们的 EnergyTrace 工具确认器件唤醒或未唤醒。

    此致、

    亚瑟

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

    谢谢 Arthur!

    没有 Task_sleep()的 while 循环怎么样? 我注意到它不会被置于睡眠模式、但控制器什么也没做、所以应该将它置于睡眠模式吗?

    void* mainThread(void *arg0)
    {
        while(1)
        {
    
        }
    }

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

    您好、OG:

    实际上,您共享的代码会使设备保持活动状态,因为我们没有告诉它在 Task_sleep()调用中是允许它休眠的。

    通常、最好尝试使用尽可能少的功耗、因此此处应使用 Task_sleep。

    此致、

    亚瑟

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

    明白了。 谢谢、Arthur!