msp430f5529AD多通道转化无法跳出中断

进入AD之后无法跳出AD服务中断函数,请教各位大神指教!谢谢,以下是代码:
/*************************************************************************
** 函数名称:main
** 工作环境: IAR 5.22 
** 相关文件:
** 修改日志:
功能: AD转换多通道多次转换
*************************************************************************/
#define   Num_of_Results   32
static unsigned int resultss[36];                                   // 转换值存取变量
volatile long temp;
volatile long IntDegC;
void main(void)

  unsigned int i;
  WDTCTL = WDTPW+WDTHOLD;                                         // 关闭看门狗
  
  UCSCTL4 = SELM__DCOCLK + SELS__DCOCLK;                          // 选择时钟源
  P6DIR &= ~(BIT2 + BIT3 + BIT4);                                 // 选择6.2,6.3,6.4口为输入端口
  P6SEL |= (BIT2 + BIT3 + BIT4);                                  // P6口第二功能
  ADC12CTL2 = ADC12RES_2 + ADC12REFOUT;                           // AD基本配置
  ADC12CTL0 = ADC12ON + ADC12MSC + ADC12SHT03 + ADC12REFON + ADC12REF2_5V;                                        
  //ADC12MCTL10 |= ADC12SREF_0 + ADC12INCH_10;                       // 采样温度
  ADC12MCTL2 |= ADC12SREF_0 + ADC12INCH_2;                        //  采样6.2端口数据输入
  ADC12MCTL4 |= ADC12SREF_0 + ADC12INCH_4 + ADC12EOS;             //   采样6.4端口数据输入
  ADC12CTL1 = ADC12SHP + ADC12CONSEQ_3;                           // 选择转换模式                   
  for (i=0;i<0xFFFF;i++);                                         // 等待基准电压建立                       
  UCSCTL8 |= MODOSCREQEN;  
  ADC12IE |= 0X08;                                                // 使能通道4中断
  ADC12CTL0 |= ADC12ENC;                                          // 开启转换
  _EINT();                                                         // 打开总中断
  ADC12CTL0 |= ADC12SC;                                           // 转换开始
// while (!(ADC12IFG & BIT0));
  //display1(sj);
  //LPM3;                                                           // 进入低功耗3
}
/*************************************************************************
** 函数名称:AD转换中断函数
** 工作环境: IAR 5.22
** 功能:     保存转换值
** 相关文件:
** 修改日志:
*************************************************************************/
#pragma vector = ADC12_VECTOR
__interrupt void ADC12ISR(void)
{
  static uint index = 0;

  resultss[index++] = ADC12MEM2;               // Move results
  if(index == Num_of_Results)                  
        uchar i;
        unsigned long sum = 0;
        index = 0;
        for(i = 0; i < Num_of_Results; i++)
        {
            sum += resultss[i];
        }
        sum >>= 5; 
        Trans_val(sum); 
        delay1(200);
        //ADC12CTL0 &= ~ADC12ENC;
        //ADC12CTL0 &= ~ADC12ON; 
        //_DINT();
  }
          
}