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.

[参考译文] 如何强制进入睡眠模式?

Guru**** 2540720 points
Other Parts Discussed in Thread: CC2530

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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/564785/how-to-force-enter-sleep-mode

主题中讨论的其他器件:CC2530

在我的应用中、我已经遵循了"CC2530的电源管理"文档、

编译选项:power_saving
f8wConfig.cfg
-DRFD_RCVC_AYST_ON=false

我有一些问题:
计时器睡眠:进入计时器睡眠之前超时的周期长度是多少?
深度睡眠:进入深度睡眠之前超时的周期长度是多少?

来自 OSAL.c

#if defined (power_saving)&&!defined (use_ICALL)
else //完成无活动的所有任务事件的传递?
{
osal_pwrmgr_powersave();//将处理器/系统置于睡眠
状态}
#endif 

如何强制其在应用中进入睡眠模式?
例如、我想使用按钮执行此操作:

如果(键& HAL_KEY_SW_6)
{???
//将处理器/系统置于睡眠
状态} 

谢谢你

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当任务队列中没有任务时、CC2530将立即进入睡眠模式。 时间取决于任务数量和任务所需的时间。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Cyclonmaster、

    正如 YK 所说的,OSAL 会在队列中没有任务事件时自动处理功耗。 您能否描述此行为的用例?具有类似的睡眠触发器可能会导致问题、还是用于测试目的?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我无法进入睡眠模式。 已在文档中将编译选项 ETC 应用为 adice。 如何确保它处于睡眠模式? 我尝试使一个 LED 保持亮起。 我想、如果它进入睡眠状态、所有输出都将关闭。 但 LED 始终亮起、永不熄灭。 然后、我们删除所有应用程序代码、并在等待很长时间后测量功耗。 它仍然显示为600uA。 我们的目标是实现100uA。

    我想确保在睡眠模式下进行一些测试和测量、以确保电路不会消耗额外的功率。

    谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您看到600uA、我认为 CC2530已经进入睡眠模式(PM2)。 您应该检查 IO 引脚上是否存在电流泄漏。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、自行车大师、

    似乎您有轮询的密钥、为此、您必须通过定义 ISR_KEYINTERRUPT 来确保启用密钥中断、否则堆栈将轮询密钥、这不允许器件正确进入睡眠状态。
    您能否尝试一下并让我们知道它是如何发展的?

    BTW、您如何测量电流?我们发现验证功耗的最佳方法是直接从 EM 获取、而不是在 EB 中。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    路易斯的好地方