代码:
void AdcInit (void)
{
ADC12CTL0 = ADC12SHT02 + ADC12ON; //采样时间、ADC12打开
ADC12CTL1 = ADC12SHP; //使用采样计时器
ADC12MCTL0 = ADC12INCH_2; //选择输入通道2
ADC12MCTL1 = ADC12INCH_3 | ADC12EOS; //选择输入通道3
ADC12IE = ADC12IE0; //启用中断
ADC12CTL0 |= ADC12ENC;
P6SEL |= BIT2 | BIT3; // P6.0 ADC 选项选择
}
#pragma vector = ADC12_vector
_interrupt void ADC12_ISR (void)
{
uint16nTemp ;
switch (__evo_in_range (ADC12IV、34))
{
情况 0:中断; //向量 0: 无中断
情况 2:中断; //矢量 2: ADC 溢出
情况 4:中断; //矢量 4: ADC 时序溢出
情况 6: //向量 6: ADC12IFG0
nTemp = ADC12MEM0;
tracelog ("ADC12MEM0 =%d\n"、nTemp);
nTemp = ADC12MEM1;
tracelog ("ADC12MEM1 =%d\n"、nTemp);
_BIC_SR_REGISTER_ON_EXIT (LPM0_BITS); //退出活动 CPU
中断;
案例 8: //向量 8: ADC12IFG1
中断;
默认值:break;
}
}
P6.2成功、但 P6、3失败、ADC12MEM1为零。 但 P6.3电压为3.3V