2.如果默认值采集高16位,输入端电压29mv,采集到的值乱七八糟,一直跳动,也不知道如何计算,是按16位计算,还是24位呢,2种我都试了结果也不是29mv.满量程600mv算的。
3.void main(void)
{
volatile unsigned int i; // Use volatile to prevent removal
// by compiler optimization
for (i = 0; i < 0x3600; i++); // Delay for 1.2V ref startup
SD24CCTL1 |= SD24SC; // Set bit to start conversion
__bis_SR_register(LPM0_bits + GIE); // Enter LPM0 w/ interrupts
}
#pragma vector=SD24_VECTOR
__interrupt void SD24AISR(void)
{
static unsigned int index = 0;
unsigned char i;
long sum=0;
switch (SD24IV)
{
case 2: // SD24MEM Overflow
break;
case 4: // SD24MEM0 IFG
break;
case 6: // SD24MEM1 IFG
results[index++] = SD24MEM1; // Save CH2 results (clears IFG)
if (index == Num_of_Results)
{
for(i=0;i<10;i++)sum+=results;
Ch0Adc=(sum/10);
index = 0;
sum=0; // SET BREAKPOINT HERE
}
break;
case 8: // SD24MEM2 IFG
break;
}
}