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.

[参考译文] MSP430G2433:~REFON 延迟进入 LPM3

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1026647/msp430g2433-refon-delaying-entry-to-lpm3

器件型号:MSP430G2433

我有一个程序在1秒周期(大约)内采样50ms。 使用 LFO 进行时序、使用 ADC10进行采样。

50ms ->连续采样
950ms ->停止采样并在计时器脱离 LFO 运行时进入 LPM3

当在每个50ms 采样周期结束时进入 LPM3时、我运行以下代码:

// RFD sleep function
void SleepRFD(void) {
    ADC10CTL0 &= ~ENC;                      // Stop conversion
    ADC10CTL0 &= ~REFON;                    // Turn off reference

    RF_DET_OFF                              // Turn RF supply off
    ALL_LED_OFF                             // Turn LEDs off

    __bis_SR_register(LPM3_bits);           // Enter LPM3
}

如果我关闭基准(ADC10CTL0 &=~REFON;)、我得到一个大约0.012mA 的良好最小 Iq、这是我的电路的寄生电流。 但是、我进入 LPM3时会有很大的延迟、因此整个代码(采样和休眠)的平均电流消耗为6.6mA。 请参阅随附的图像、了解其 Energytrace 曲线图。

如果我将基准保持在 ON (//ADC10CTL0 &=~REFON;)上、我得到一个大约0.194mA 的较差最小 Iq、该 Iq 由基准电流消耗决定。 然而、代码快速进入 LPM3、所以总体代码的平均电流消耗(采样和休眠)为2.3mA。 请参阅随附的图像、了解其 Energytrace 曲线图。

查看电能迹线图、看起来关闭基准会导致 MSP430进入 LPM3的延迟。 为了使我能够关闭基准并快速进入 LPM3、我应该采取哪些不同的方式来关闭电源? 此外、为什么 Energy Trace 显示的估算电池寿命更长、从而使第一条迹线的平均电流消耗更高?

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

    丹尼尔:

    如果不让整个程序检查、也不让整个目标检查、我认为您使用的编程方法是错误的。

    尝试这个。 在 main()的内部设置 ADC,以便在中断服务例程(ISR)需要时使用它,然后设置计时器每1秒触发一次 ISR,然后作为 main()中的最后一条指令,将微控制器放在 LPM3中。

    在 ISR 内部、编写激活 ADC 的指令、然后使用 ADC 捕获样本、然后停用 ADC 以及微控制器所需执行的任何其他操作。 当 CPU 完成 ISR 后、它将自动将微控制器放回 LPM3。

    要获得更低的功耗,请使用 LPM3.5,但这需要在将其置于睡眠状态之前在 main()中添加一些附加指令。 它还会切断 ADC 的电源。 但是、这种功率模式会强制完全复位以防止中断、因此您必须在该模式下将 RTC 用作计时器。 这些指令基本上为 LMP3.5准备了微控制器。 使用此模式非常复杂、但确实降低了功耗。

    使用该方法实际上是减少不必要功耗的最有效方法。

    但愿这有所帮助。

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

    您能否描述(或粘贴)您的 ADC10配置? 我想知道这是否与设置 ENC=0不会立即停止正在进行的转换有关[参考 UG (SLAU144J) 22.2.6.6]。 在任何情况下、我都不会期望这花费10s 的 ms、但这是一个开始的地方。

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

    尊敬的 Thomas:

    感谢你的答复。 应用程序说明位于此回复的底部。 单个 ADC 样本不可行。

    我要做的是最大程度地降低 LPM3功耗。 这是"自由"能量、降低它不会影响采样率驱动的器件性能。

    经过进一步调查、我注意到 Energytrace 实际上报告的总能耗显著降低、显示了"lumpy"电流消耗和6.6mA 的平均电流。 这让我相信、在 Energytrace 内、能耗积分器可能工作正常、电流测量曲线可能工作不正常。 我们将在未来几天与一些测试设备进行验证。

    Energytrace 是否存在此类已知缺陷/限制? 我通常使用实验室设备进行此测试、但远程工作、访问该测试的权限有限、因此在这里稍微倾向于使用 TI 的工具。

    应用描述:

    在采样高速调制波形时、我需要在50ms 采样窗口期间在 ADC 上使用完整的200ksps。 我需要具有代表性的波形"切片"、我可以从中进行功率测量计算。 在此应用中、我不需要以100%占空比对其进行采样。 5%的占空比是足够的。 较低的占空比会影响测量完整性。 单个样本将无法清晰地显示波形峰值振幅或平均信号功率(集成)。 必须有一个样本窗口、它需要最小5%、并且需要快速采样。 这些是应用驱动的要求。 这部分代码及其电路已经过功耗优化。

    MSP430G2433没有 LPM3.5。 在适当的系统模式下、我确实使用了 LPM4并获得良好的结果。 这些模式下的 IQ 为11uA 或更低、这是我的支持电路的 IQ。 此处 MSP430处于 NA 状态。

    再次感谢您的回复。 感谢您花时间对此发表评论。 我希望这两个问题,以及申请的要求,都能得到更清楚的说明。

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

    我找到了问题。 Energytrace 中存在未解析的错误。 请参阅以下文章:

    https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/893993/ccs-energytrace-way-off-current-measurement-on-a-rf-system

    这正是我看到的问题、也是一个非常相似的设计(向射频模块切换电源)。 相同的电流迹线和所有东西。

    当我使用测试设备测量我的功耗时、它是正确的(低)、并且电流迹线上的这些块不存在。 MSP 正在正确(快速)切换到 LPM3。 在我的案例中、Energytrace 的能耗值是正确的、但电流测量和布线不正确。 对上述 TI 论坛帖子中的错误进行详细分析、这一点非常有意义。

    还有其他一些文章报告了此错误、可追溯到几年前。 希望它可以得到解决。 在此之前、更广泛地告知用户此问题可能会有所帮助、以便他们可以在系统开发期间使用其他工具。

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

    很棒的地方!

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

    感谢您的分享!