TI中文支持网
TI专业的中文技术问题搜集分享网站

MSP430F5310 LPM3 模式下的功耗测试结果与手册差别比较大

搜索了一下论坛,貌似用 MSP430F5310 的比较少。

我们采用自开发的使用 MSP430F5310 板子,使用的测试代码为 F5310 自带的代码例子 MSP430F530x_LPM3_01.c

实际得到的结果约为 4uA, 约手册上的2uA 左右的两倍,误差比较大。

测试方法为使用万用表 200uA 档串入电池进行测试,电池供电电压为 3.6V

板子上的所有外设已经去掉,只保留电源模块。电源模块原理图如下:

测试代码:

//******************************************************************************
// MSP430x530x Demo – Enters LPM3 with ACLK = LFXT1, REF0 disabled,// VUSB LDO and SLDO disabled, SVS disabled
//
// Description: Configure ACLK = LFXT1 and enters LPM3. Measure current.
// ACLK = LFXT1 = 32kHz, MCLK = SMCLK = default DCO
//
// MSP430F530x
// —————–
// /|\ | XIN|-
// | | | 32kHz
// —|RST XOUT|-
// | |
//
// K. Chen
// Texas Instruments Inc.
// Ver 2.00 – May 2012
// Built with CCS Version: 5.2 and IAR Embedded Workbench Version: 5.40.3
//******************************************************************************
#include <msp430.h>

#define SYS14_WORKAROUND // Comment this line if silicon revision has SYS14 bug fixed

#ifdef SYS14_WORKAROUND
#define INIT_MEMORY_ADDR 0x0900
unsigned int *Address = ((unsigned int*)INIT_MEMORY_ADDR);#endif

int main(void)
{
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
#ifdef SYS14_WORKAROUND *Address = 0x9628;
*(Address+4) = 0x0800;
*Address = 0x9600;#endif // Enable XT1
P5SEL |= BIT4|BIT5; // Port select XT1
UCSCTL6 &= ~(XT1OFF); // XT1 On
UCSCTL6 |= XCAP_3; // Internal load cap

// Loop until XT1 & DCO stabilizes
do
{
UCSCTL7 &= ~(XT2OFFG | XT1LFOFFG | DCOFFG);
// Clear XT2,XT1,DCO fault flags
SFRIFG1 &= ~OFIFG; // Clear fault flags
}while (SFRIFG1&OFIFG); // Test oscillator fault flag

UCSCTL6 &= ~(XT1DRIVE_3); // Xtal is now stable, reduce drive
// strength
// Port Configuration
P1OUT = 0x00;P2OUT = 0x00;P3OUT = 0x00;P4OUT = 0x00;P5OUT = 0x00;P6OUT = 0x00;
PJOUT = 0x00;
P1DIR = 0xFF;P2DIR = 0xFF;P3DIR = 0xFF;P4DIR = 0xFF;P5DIR = 0xFF;P6DIR = 0xFF;
PJDIR = 0xFF;

// Disable SVS
PMMCTL0_H = PMMPW_H; // PMM Password
SVSMHCTL &= ~(SVMHE|SVSHE); // Disable High side SVS SVSMLCTL &= ~(SVMLE|SVSLE); // Disable Low side SVS
__bis_SR_register(LPM3_bits); // Enter LPM3
__no_operation(); // For debugger
}

 

请问一下,造成功耗误差这么大的原因是什么?电源设计部分硬件是否有问题呢?谢谢!

灰小子:

电源部分工作也要消耗功耗的,这个测量结果误差不算大了。

如果要测量mcu的功耗,可以从电源部分和vcc引脚间断开,然后测量

terry:

回复 灰小子:

谢谢!

断开了电源,功耗可将到 3.4uA, 和手册还是有差别。

因为我们的应用要求使用 F5310 实现 5ms 的采样频率,功耗在 10uA 以下,貌似这个难以实现。 

赞(0)
未经允许不得转载:TI中文支持网 » MSP430F5310 LPM3 模式下的功耗测试结果与手册差别比较大
分享到: 更多 (0)