voltaje de la batería con microcontrolador [duplicado]

Posible duplicado:
Arduino tiene un valor de entrada en el pin desconectado

Deseo medir el voltaje de una batería de 1.5V usando un microcontrolador (voltaje de suministro de 3V).

Pensé en conectar la batería en la entrada ADC4 del microcontrolador y escribí un programa que lee el ADC4.

Inicialmente programé el microcontrolador sin conectar la batería al ADC4. Esperaba obtener un valor de 0V (nada conectado a ADC4), pero no lo hice. En cambio, obtengo un valor más alto que también fluctúa. Traté de medir el voltaje en ADC4 con un voltímetro, pero no puedo obtener una lectura porque obviamente fluctúa. ¿Por qué está pasando eso?

Véase también esta pregunta .
Sé que esta es una pregunta bastante antigua y parece que ya no puedo responderla, pero en caso de que otras personas la encuentren, creo que el problema fue que no había configurado el pin como entrada en el registro TRISx . Recuerde también configurar el registro ANSELx.

Respuestas (1)

Está captando ruido, como lo hace un receptor de radio, pero en una frecuencia más baja. Si observa de cerca los valores que mide, reconocerá la red de 60 o 50 Hz en él.

La forma más fácil de deshacerse de él es conectar una resistencia a tierra; de todos modos, desea una carga ligera al medir la batería. 10k Ω probablemente se librará del ruido. Dependiendo de la batería, es posible que desee cambiarla a un valor más bajo para darle algo de carga.

¡Eso suena interesante! no lo habría adivinado. Entonces, ¿cómo debería ser mi configuración? ADC4 - batería - 10K - ¿tierra? ¿Está bien? ¿Y cómo podría medir 0V en ADC4 (sin la batería)?
10k Ω del ADC4 a tierra, paralelo a donde quieras medir tu batería.