void adc1_init()
{
P9OUT &=~ BIT1;
P6SEL |= BIT2;
WDTCTL = WDTPW + WDTHOLD;
ADC12CTL0 = ADC12ON + ADC12SHT0_8 + ADC12MSC;
ADC12CTL1 = ADC12SHP + ADC12CONSEQ_2;
ADC12MCTL3 = ADC12INCH_2 + ADC12EOS; //A0
ADC12IE = 0x01;
ADC12CTL0 |= ADC12ENC;
}
void adc2_init()
{
P9OUT &=~ BIT2;
P6SEL |= BIT1;
WDTCTL = WDTPW + WDTHOLD;
ADC12CTL0 = ADC12ON + ADC12SHT0_8 + ADC12MSC;
ADC12CTL1 = ADC12SHP + ADC12CONSEQ_2;
ADC12MCTL3 = ADC12INCH_1 + ADC12EOS; //A1,
ADC12IE = 0x01;
ADC12CTL0 |= ADC12ENC;
}
void adc3_init()
{
P9OUT &=~ BIT3;
P6SEL |= BIT0;
WDTCTL = WDTPW + WDTHOLD;
ADC12CTL0 = ADC12ON + ADC12SHT0_8 + ADC12MSC;
ADC12CTL1 = ADC12SHP + ADC12CONSEQ_2;
ADC12MCTL3 = ADC12INCH_0 + ADC12EOS; //A2
ADC12IE = 0x01;
ADC12CTL0 |= ADC12ENC;
}
void adc_stop()
{
ADC12CTL0 &= ~ADC12ENC;
ADC12CTL0 = 0;
ADC12CTL1 = 0;
ADC12IFG = 0;
ADC12MEM0 = 0;
}
void main()
{
MAIN_POWER_ON;
P7DIR |= LED_PWR; // 发光二极管电源
P7OUT &=~LED_PWR;
P9OUT = 0x0F;
P9DIR = 0x0F;
Init_CLK();
//adc_init();
static unsigned char index0 = 0;
static unsigned char index1 = 0;
static unsigned char index2 = 0;
while(1)
{
if(a==1)
{
adc1_init();
for(;index0 < 12; index0++)
{
ADC12CTL0 |= ADC12SC;
while(!(ADC12IFG & BIT0)); //wei he zai yi zhi zuan huan?
restule0[index0] = ADC12MEM0;
}
adc_stop();
a = 0;
}
if(b==1)
{
adc2_init();
for(;index1 < 12; index1++)
{
ADC12CTL0 |= ADC12SC;
while(!(ADC12IFG & BIT0));
restule1[index1] = ADC12MEM0;
}
adc_stop();
b = 0;
}
if(c==1)
{
adc3_init();
for(;index2 < 12; index2++)
{
ADC12CTL0 |= ADC12SC;
while(!(ADC12IFG & BIT0));
restule2[index2] = ADC12MEM0;
}
adc_stop();
c = 0;
}
while(1)
P9OUT &=~ BIT0;
我这样配置为什么采样的结果都是p6.0 引脚结果