conversor ADC con LPC2148

Buenas!

soy nuevo en el foro, y al ver muchas de mis dudas resueltas aquí, aprovecho para consultar lo siguiente.

Estoy trbajando con ARM y necesito realizar una conversión AD, pero al cargar el progrma en el micro no estaría funcionando. realmetne no le encuentro la vuelta.

Alguno me puede dar una mano con este codigo? o tiene algún ejemplo probado y funcionando?

Aquí el programa:

Código:
#include<LPC214x.h>

int val = 0;
int aux = 0xFFFFFFC3; 

void ADC(void) __irq;

int main(void)
{
	
	PINSEL0 = 0x00000000;		// GPIO 
	PINSEL1 = 0x00040000; 		//configuro como entrada de convercion al AD0.4
	
	IODIR0 = 0xFFFFFFFF;		  //P0.0 a 31 definidas como salidas
	IOSET0 = 0xFFFFFFFF;		// Apago todos los led

	VPBDIV = 0x00000002;          //Establece el Pclk a 30 MHz

   	PCONP |= 0x1000;
	AD0CR = 0x002D0610;			  //Coonfigura el ADC0, 4 bit de resolución
	
	
	VICVectCntl0= 0x20|18;  	   // Asigna el ADC al slot 0	  
	VICVectAddr0= (unsigned)ADC;  // Da la dirección de la IRQ vectorizada
	VICIntEnable= 0x00040000;      //Habilita la interrupción

	while(1);
} 

void ADC (void)__irq
{

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

	while (!(AD0DR4 & 0x80000000));  		//Wait for the conversion to complete

	val = ((AD0DR4 >> 4) & 0xFFC);  		//Extract the A/D result 

	val = val | aux;
	IOCLR0 = ~val;  				 	 //write the result onto the LED pins
	IOSET0 =  val;
	
	VICVectAddr=0x00000000;

}
 
Atrás
Arriba