如题,我的ADC中断进不去,程序如下:
void InitAdc(void)
{
P6SEL |= 0x60;
ADC12CTL0 &= ~ADC12ENC;
ADC12CTL0 = ADC12ON + ADC12REFON + ADC12SHT0_8;
ADC12CTL1 = ADC12SHP + ADC12CONSEQ_3;
ADC12MCTL0 = ADC12INCH_5 + ADC12SREF_0;
ADC12MCTL1 = ADC12INCH_6 + ADC12SREF_0 + ADC12EOS;
ADC12IE = 0x02;
ADC12CTL0 |= ADC12ENC;
}
#pragma vector=ADC12_VECTOR
__interrupt void ADC12ISR (void)
{
static unsigned int index = 0;
switch(__even_in_range(ADC12IV,34))
{
case 0: break; // Vector 0: No interrupt
case 2: break; // Vector 2: ADC overflow
case 4: break; // Vector 4: ADC timing overflow
case 6: break; // Vector 6: ADC12IFG0
case 8: // Vector 8: ADC12IFG1
A5Resault[index] = ADC12MEM0;
A6Resault[index] = ADC12MEM1;
index++;
if(index == 8)
{
(index = 0);
ADC12CTL0 &= ~ADC12SC;
}
break;
case 10: break; // Vector 10: ADC12IFG2
case 12: break; // Vector 12: ADC12IFG3
case 14: break; // Vector 14: ADC12IFG4
case 16: break; // Vector 16: ADC12IFG5
case 18: break; // Vector 18: ADC12IFG6
case 20: break; // Vector 20: ADC12IFG7
case 22: break; // Vector 22: ADC12IFG8
case 24: break; // Vector 24: ADC12IFG9
case 26: break; // Vector 26: ADC12IFG10
case 28: break; // Vector 28: ADC12IFG11
case 30: break; // Vector 30: ADC12IFG12
case 32: break; // Vector 32: ADC12IFG13
case 34: break; // Vector 34: ADC12IFG14
default: break;
}
}
请帮忙看一下,谢谢!
主程序中已启动AD:
InitAdc();
ADC12CTL0 |= ADC12SC;