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.

[参考译文] MSP430FR2633:不活动超时

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/851863/msp430fr2633-inactivity-timeout

器件型号:MSP430FR2633

您好!
我的客户使用 MSP430FR2633制作了应用
CapTIvate。 他们评估了电流消耗。

它们设置了"不活动超时= 10000"、以避免在"接近唤醒"后睡眠。 因此、确认了意外的电流消耗。

(此项目基于设计中心版本1.7的示例代码)

问题1:
似乎"不活动超时"也应用于"唤醒间隔"的扫描时序。 (一段时间内不睡眠)
是这样吗?

问题2:
我们希望仅将"不活动超时"应用于"接近唤醒"。 这是可行的吗?


此致、Rei

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

    您好 Rei、

    感谢您访问该论坛。

    我首先要询问一些其他信息:

    您也引用了哪个示例代码?

    您希望有什么延迟? 为什么要将参数设置为1000?

    活动模式扫描速率是多少?

    《技术指南》中定义了"不活动超时"。 请在我们的文档中查看该信息。

    "不活动超时指在没有接近检测后 CPU 继续扫描所有传感器的时间。 超时结束时、MCU 重新进入超低功耗接近唤醒模式。 超时时间基于“活动扫描速率”乘以“非活动超时”值。


    此参数的默认值为32个样本、这意味着 CPU 在接近检测唤醒后的32个样本保持活动状态、然后再返回 LPM。

    在接近唤醒模式下进行的常规扫描在没有 CPU 参与的情况下完成。 增加不活动时间将增加 CPU 处于活动状态的时间、从而消耗更多功率。

    对于问题2、是的、不活动超时适用于接近唤醒。 它与 GUI 中选择用于接近感应的传感器相关。

    我希望我正确理解您的问题、我的回答有助于澄清问题。

    如果您有其他问题、请随时联系论坛。

    此致

    Kostas

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

    Kostas、您好!

    我已查看文档。
    客户希望通过"接近唤醒"来唤醒、并保持活动状态大约10秒。
    因此、它们将"不活动超时"设置为10000作为测试。 (活动扫描速率= 33。)

    我了解到该设置在"接近唤醒"后10秒内消耗更多电流。

    现在他们的问题是"唤醒间隔"。
    由于"唤醒间隔"是定期校准、我认为 CPU 将定期激活。 校准后应该睡眠的 CPU 似乎等待"不活动超时"并且电流消耗增加。

    他们希望 CPU 在校准后立即休眠。 (非活动超时= 10000时)

    此致、Rei

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

    您好 Rei、

    我认为我们可以找到解决方案。 我会在接下来的几天再回来。

    此致

    Kostas

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

    Kostas、您好!

    一如既往地感谢您。 我正在等待您的更新。

    此致、Rei

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

    您好 Rei、

    我将在今后几天离开,因此,这里提出了一个如何做到这一点的简短建议。

    当定期唤醒以进行校准时退出 WOP (g_bConvCounterFlag=true),请求在激活模式下具有更短的时间(g_ui16UISesionTimeoutCtr),而不是较长的不活动时间。

    在 CAPT_App.c 中、请修改以下内容

    …………

           案例 eUIWakeOnProx:
    #if (CAPT_WAKEONPROX_ENABLE=true)
               IF (g_bDetectionFlag || g_bConvCounterFlag || g_bMaxCountErrorFlag)
               {
                   //
                   //如果设置了检测、转换计数器或最大计数错误标志,
                   //停止自主模式并重新加载活动会话
                   CAPT_STOPWakeOnProxMode (&CAPT_WAKEONPROX_SENSOR、0);

    //=>在此处添加:

    如果唤醒是由(g_bDetectionFlag)引起的、而不是 由(g_bMaxCountErrorFlag)引起的

    和(g_BConvCounterFlag)设置为

    设置(g_ui16uISesionTimeoutCtr)=小值(例如10);

    否则设为  (g_ui16uISesionTimeoutCtr)= g_uiApp.ui16InactivityTimeout (已设置)。

                   G_bDetectionFlag = false;
                   G_bConvCounterFlag = false;
                   G_bMaxCountErrorFlag = false;
                   G_uiApp.state = eUIActive;
    //               g_ui16uISesionTimeoutCtr = g_uiApp.ui16InactivityTimeout;
    ===========================

    下面是一个简单的实现:

                   如果(!g_bDetectionFlag)
                   {
                       if (!g_bMaxCountErrorFlag)
                       {
                           IF (g_BConvCounterFlag)
                               G_ui16UsersionTimeoutCtr = 10;
                           其他
                               G_ui16uISesionTimeoutCtr = g_uiApp.ui16InactivityTimeout;
                       }
                   }
                   其他
                       G_ui16uISesionTimeoutCtr = g_uiApp.ui16InactivityTimeout;

     

    如果唤醒是由 ConvCounterFlag 引起的,那么 SessionTimeout 将是短的,如果它是由任何其他事件引起的,它将保持与 InactivityTimeout 定义的相同。

     我已经做了一些基本测试、似乎可以正常工作。

    本章结尾提供了更多信息和示例


    请告诉我该建议是否能解决您的问题。

    谢谢

    此致

    Kostas

     

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

    Kostas、您好!

    感谢你的答复。 您的解释很容易理解。 我不知道 CAPT_APP c..的定制 这在各种情况下似乎很有用。 我将其发送给了客户。 我等待客户的反应。
    非常感谢。

    此致、Rei

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

    您好 Rei、

    如果您不介意、我会关闭该主题、直到客户回来。

    您可以随时重新打开或创建新线程

    谢谢

    此致

    Kostas