This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

msp430f149 AD中断的问题



#include <msp430x14x.h>

static unsigned int ADC_GET;
float result;
void main(void)
{
WDTCTL = WDTPW+WDTHOLD;                 // 关狗
ADC12CTL0 = ADC12ON+MSC+SHT0_2  ;       // 打开ADC12 cycle =16 T=16*ADC12CLK
ADC12CTL1 = SHP+CONSEQ_2;                   //采样输入信号为同向输入 单通道多次转换模式  时钟源ADC12CLK
ADC12MCTL0 = INCH_0+EOS;             // ref-=AVss(0) ref+=AVcc(3.3), channel = A0 end seq
ADC12IE = 0x01;                   //允许ADC12IE.1 置位时中断
ADC12CTL0 |= ENC;            // ADC12使能

P6SEL = 0x01;            // P6.0 第二功能 AD
P2DIR|= 0XFF;           //测试

while(1)
  {
         ADC12CTL0 |= ADC12SC;           // 开始采样并转换
        _BIS_SR(CPUOFF+GIE);           // 关闭CPU 开全局中断
        result=4095*ADC_GET/3.3;       //结果处理
       if (result>1)
     { 
             P2OUT = 0X0F; //若P6.0口输入大于1V 则LED低四位亮
     }
       else
     {
              P2OUT = 0XF0; //高四位亮
     }
  }

}

#pragma vector=ADC_VECTOR
__interrupt void ADC (void)
  {
        ADC_GET = ADC12MEM0; // Move results, IFG is cleared
      _BIC_SR_IRQ(LPM0_bits); // Clear LPM0, SET BREAKPOINT HERE
  }

这是我的代码  接信号发生器 调到1V以上和以下  LED都灯不亮

遂测试

我把P2亮LED的指令 放在了 main的第一句  或者 while 循环 里的 第一句 或者中断里的第一句  

下载进去LED都是灭的  

将中断注释掉  能亮  貌似AD中断设置的问题  麻烦大家帮我看看

顺便看看我的代码有问题吗。。。。