This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Problem using multiple ADC Channels in LPC2378

I am facing problem using ADC channel 0 & 1 simultaneously.

//////////////////////////////////////////////////
//My ADC Initilisation:
/* Power enable, Setup pin, enable and setup AD converter interrupt */

PCONP |= (1 << 12); // Enable power to AD block
PINSEL1 = 0x00014000; /* AD0.1 pin function select */
AD0INTEN= 0x0003; /* CH0 & CH1 enable interrupt */
AD0CR = 0x00200303; /* Power up, PCLK/4, sel AD0.0*/
VICVectAddr18 = (unsigned long)ADC_IRQHandler;
/* Set Interrupt Vector */
VICVectCntl18 = 14; /* use it for ADC Interrupt */
VICIntEnable = (1 << 18);//Enable ADC Interrupt

//////////////////////////////////////////////////
// my handler

__irq void ADC_IRQHandler(void)
{ AD_last = (AD0DR1 >> 6) & 0x3FF; //Read Conversion

avg_val = avg_val + AD_last;

++avgcnt;

if(avgcnt == 15) //take average

{ avgcnt = 0;

calc_val = avg_val/15;

avg_val = 0;

} VOLT_last = (AD0DR0 >> 6) & 0x3FF; //Read Conversion

VICVectAddr = 0; /* Acknowledge Interrupt
}

//////////////////////////////////////////////////

AD0CR |= 0x01000000; /* Start A/D Conversion

This i have done in ISR.

AD0.1 is fine, but AD0.0 stops ????
please ! can anyone help me ??????