He hecho un programita para practicar la conversión A/D, estoy usando un 877, los canales AN0 y AN1 y un LCD. El programa simplemente lee el puerto AN0, el resultado de la conversion se pasa a bcd y luego a ascii y se envia al lcd, luego lee el canal AN1 y repiete la operacion indefinidamente. En la simulacion en proteus funciona perfecto PERO......., (porque siempre hay un pero?) cuando monto el sistema pasa lo siguiente; conecto el canal 0 (AN0) a un potenciometro y el canal AN1 o tierra, pues cuando el potenciometro esta entregando 5V el valor que obtengo es 375 y deberia ser 1023, si conecto el canal AN1 a 5V entonces si da el 1023. Con los dos canales a 0V el resultado es 0 en ambos canales pero cuando empiezo a aumentar el voltaje en uno de los canales, el valor de salida del canal que no esta variando tambien cambia.
Si modifico el programa para leer 1 solo canal, funciona perfectamente.
¿que puede estar pasando?

PD: Ya probé con otro 877 nuevo de paquete y pasa exactamente lo mismo.