Quantcast
Channel: MSP 低功耗微控制器论坛 - 最近的话题
Viewing all articles
Browse latest Browse all 3634

MSP430f5172的序列通道采样问题

$
0
0

各位好:

我想用到5172的序列通道,我配置了三通道(A5,A4和A3)是好的,采集数据是正确的,但是修改参数改为四通道想用到A6就不行了,不知道什么原因,请各位帮忙看看,具体是什么错误。我把我的代码配置贴出来给大家看看,其中AD_Deel()函数8ms执行一次

void  AD_configure()
{
  P1SEL|=BIT5;  // BIT3+BIT4+         // 
  P3SEL |=BIT7;       //添加通道6
  // Configure ADC10; pulse sample mode, s/w trigger, rpt seq of channels
  ADC10CTL0 = ADC10SHT_6 + ADC10MSC + ADC10ON;  // ADCclks, ADC on
  ADC10CTL1 = ADC10SHP + ADC10CONSEQ_3;              // Sampling timer, rpt seq of ch
  ADC10CTL2 = ADC10RES;                                                 // 10-bit resolution
  //  ADC10MCTL0 = ADC10INCH_5;                                     // 原先从通道5开始递减
   ADC10MCTL0 = ADC10INCH_6;                                        // 从通道6开始递减
  DMACTL0 = DMA0TSEL_24;                                               // ADC10IFG trigger
   __data16_write_addr((unsigned short) &DMA0SA,(unsigned long) &ADC10MEM0); // Source single address 
  DMA0SZ = 0x08;                                                                 //原来设置成6,现在改为8
  DMA0CTL = DMADT_4 + DMADSTINCR_3 + DMAEN + DMAIE;
          }



 void ADC_Deel()
  {
    unsigned int i; 
    for(i=0;i<4;i++)                                            //原来的i<3改成i<4
    {   
        __data16_write_addr((unsigned short) &DMA0DA,(unsigned long) &ADC_Result[i]);
          
           ADC_Result[i]      = (ADC_Result[i]   <<6)&0xffC0;
           ADC_Result[i+1]    = (ADC_Result[i+1] <<6)&0xffC0;
           ADC_Result[i+2]    = (ADC_Result[i+2] <<6)&0xffC0;// 
           ADC_Result[i+3]    = (ADC_Result[i+3] <<6)&0xffC0;  //添加通道6后添加的   
 
           while (ADC10CTL1 & BUSY);                   // Wait if ADC10 core is active
           ADC10CTL0 |= ADC10ENC + ADC10SC; // Sampling and conversion ready
          __bis_SR_register(CPUOFF + GIE);          // LPM0, ADC10_ISR will force exit
}
__delay_cycles(50);                                                // Delay between sequence convs 
__no_operation();                                               // BREAKPOINT; check ADC_Result

}


Viewing all articles
Browse latest Browse all 3634

Trending Articles