extraña mente el problema estaba en el tipo de declaracion de la variable del buffer que usaba!!!
tenia que ser unsigned int! y todo se solucionooooooo!!! veanlo ustedes mismos!!
unsigned int ADC_MSB0=0, ADC_LSB0=0;
unsigned int ADD_L=0, ADD_H=0, Direccion=0, buffer=0; todo funciono de maravillas!!!!!!
un millon de gracias a todos los que colaboraron con esta duda!
la onda que intrudoje al ADC posee un periodo de 50Hz y en cada ciclo poseen 11 picos mas de aproximadamente 1Khz de frecuencia.... voy a efectuar varias pruebas al respecto...