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.

[参考译文] MSP430FR2111:处于 LPM4状态时、电流消耗高于预期

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1339595/msp430fr2111-current-drain-is-higher-than-expected-while-in-lpm4

器件型号:MSP430FR2111

在我的设计中、控制器位于基本级环路中的 LPM4中、而 ADC 配置为在单通道重复模式下进行采样、同时查找超过阈值的电压读数。 我的 ADC 配置如以下代码片段所示。 在此环路期间、测得的电路漏电流约为450uA。 如果在禁用 ADC 采样的情况下执行此环路、则电流消耗约为110uA。 因此、开启 ADC 采样似乎是电流较高的根本原因。 启用 ADC 采样时较高的电流消耗是否是执行采样的预期结果、或者是否有办法在启用采样时降低电流消耗?

静态 const int fireThresholdFlu8_9 = 10;
//静态 const int firewresholdFlu12 = 20;

//配置 ADC10通道4
ADCCTL0 &&~ADCENC;//禁用 ADC
ADCCTL0 |= ADCSHT_2 | ADCON | ADCMSC;       // ADCON、S&H 时钟;多次转换,第一次转换后自动完成
ADCCTL1 = ADCSHP_1 | ADCCONSEQ_2;            // ADCCLK = MODOSC;使用计时器采样;重复单通道
ADCCTL2 = ADCRES_1;                                             // 10位转换结果
ADCIE = ADCHIIE;                                                         //启用阈值上限中断 ADC

ADCHI = fireThresholdFlu8_9;

ADCMCTL0 = ADCINCH_4 | ADCSREF_0;              // A4 ADC 外部输入选择
ADCCTL0 |= ADCENC | ADCSC;                                //采样和转换启动//基准:V (R+)= 3V V (R-)= GND

通道= E_CHANNEL4;

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

    数据表(SLASE78C)表5-18显示 ADC 的消耗值为207uA (典型值)、其中 CONSEQ=2 (可能 MSC=1)、这与您的观察结果并不远。

    您可能需要考虑是否确实需要连续采样--通过使用触发器(CONSEQ=2, MSC=0,SHS>0),您可以根据 ADCHI 事件发生的频率/时长调整采样率。 表6-15指示 RTC 可用作触发器(SHS=1)、RTC 能够以非常低的功耗运行。

    [编辑:修正了产品说明书和表格参考(我不小心拿起了 FR2311数据表)。]