Problemas con conversor a/d pic 16f876

Hola a todos.

Estoy teniendo un problema con el conversor a/d del PIC.

La señal de entrada analogica la tengo de la siguiente manera



la configuracion del ADC la tengo asi

#device ADC=10

dentro del main

setup_adc_ports(AN0);
setup_adc(ADC_CLOCK_INTERNAL);



y para leer valores:

boolean checkBateryVoltage() {
set_adc_channel(0);
delay_us(50);
adc_value = read_adc();
delay_ms(10);
batery_voltaje = (adc_value * vref_adc * coef_divisor_resistor_adc);
batery_voltaje = batery_voltaje / scale_adc;
if ( (int) floor(batery_voltaje) < (int) floor(voltage_for_alarm)) {
printf("ad:%Lu,b:%f\n",adc_value, batery_voltaje);
return true;
}
return false;
}

donde

vref_adc =5.06 // tension de referencia
coef_divisor_resistor_adc = 3 // divisor resistivo
scale_adc = 1023 / para ADC 10 bits

la cuestion es que me esta printando valores de 0.3 Voltios.

Es normal una caida de tension a la entrada del ADC, por que de los 3.1 voltios que me saca el divisor resistivo me pasa a unos 0.9 voltios en la entrada a RA0.

No se si tiene que ver la impedancia de entrada.

Alguna idea¿?¿?.

Muchas gracias de antemano.

Un Saludo, Rodrigo
 
XDD nadie me puede decir nada.

He comprobado que cuando hago funcionar el pic la tension de salida del divisor se mantiene correcta a 3.2 pero en cuanto pasa un rato cae a 0 y poco, por que me puede estar pasando esto. no lo entiendo...
 
Atrás
Arriba