您好,我在使用msp430g2332 的时候隔一段时间会调用ADC转换(没有采用中断),在调用之前是在lmp3低功耗状态,但是调用之后,再次进入低功耗电流会在180ua上,请问这是怎么回事呢?程序如下:
for(;;)
{
_BIS_SR(LPM3_bits + GIE);
ADC10CTL1 = INCH_11; // AVcc/2
ADC10CTL0 = SREF_1 + ADC10SHT_2 + REFON + ADC10ON;
ADC10CTL0 |= ENC + ADC10SC; // ADC10 Enable ENC + ADC10SC
while (ADC10CTL1 & ADC10BUSY); // ADC10BUSY?
//voltage = ADC10MEM; // 转换结果取出
ADC10CTL0 = 0;
ADC10CTL1 = 0;
}
感觉好像ADC没有关掉。
baom wang:
如果不掉用这段ad程序,系统会一直保持在低功耗状态。
Bruce Wei:
楼主你好!
配置里面是关掉了ADC和ref。建议多测一段时间,关掉后,看看是不是测量方法导致的。
baom wang:
回复 Bruce Wei:
是去掉ADC10CTL0 = 0; ADC10CTL1 = 0;这两句吗?去掉以后结果一样。
baom wang:
回复 Bruce Wei:
不是测量方法的问题,正极电池电流是经过万用表链接到系统的,并且我的产品正常可以用七年,它只是跑了三个月就没电了。测试方法应该没出问题。当使用AD11的时候是不是改变了外面的引脚状态?