430f5418 ad转换跳动较大,程序可以改进吗,高手分析下。

2019-03-24 12:56发布

P6SEL |= 0xFF;                            // Enable A/D channel A0
  P6DIR &= 0x00;

  REFCTL0 |= REFMSTR + REFVSEL_2 + REFON;
  /* Initialize ADC12_A */
  ADC12CTL0 = ADC12ON+ADC12MSC+ADC12SHT0_15; // Turn on ADC12, set sampling time
  ADC12CTL1 = ADC12SHP+ADC12CONSEQ_1;       // Use sampling timer, single sequence

  ADC12MCTL0 = ADC12SREF_1+ADC12INCH_0;                 // ref+=AVcc, channel = A0
  ADC12MCTL1 = ADC12SREF_1+ADC12INCH_1;                 // ref+=AVcc, channel = A1
  ADC12MCTL2 = ADC12SREF_1+ADC12INCH_2;                 // ref+=AVcc, channel = A1  
  ADC12MCTL3 = ADC12SREF_1+ADC12INCH_3;                 // ref+=AVcc, channel = A1  
  ADC12MCTL4 = ADC12SREF_1+ADC12INCH_4;                 // ref+=AVcc, channel = A1  
  ADC12MCTL5 = ADC12SREF_1+ADC12INCH_5;                 // ref+=AVcc, channel = A1  
  ADC12MCTL6 = ADC12SREF_1+ADC12INCH_6;                 // ref+=AVcc, channel = A1  
  ADC12MCTL7 = ADC12SREF_1+ADC12INCH_7+ADC12EOS;                 // ref+=AVcc, channel = A1  

// ADC12IE = 0x80;
  ADC12CTL0 |= ADC12ENC;                    // Enable conversions 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
499362154
2019-03-25 09:51
你采样的模拟电压是不是频率高,纹波太大?
做个软件滤波,采30次取中间的10次,再来个平均。

一周热门 更多>

相关问题

    相关文章