nodemcu/esp8266 lee menos de lo esperado en A0

Obtuve una placa de desarrollo NodeMCU/ESP8266 y estoy tratando de utilizar la entrada A0 (ADC de 10 bits) para leer el voltaje de un divisor de voltaje en el pin de 3.3V. Así que tengo lo siguiente:

esquemático

simular este circuito : esquema creado con CircuitLab

Sin embargo, cuando leo A0, no es el valor de ~512 que esperaría para los 1,65 V (medidos con un multímetro) que está en A0. Es más bien alrededor de 450.

Si cambio las resistencias de 100K por resistencias de 1M (que es mi objetivo porque tengo un termistor de 1M), la lectura es aún más baja, alrededor de 200 donde el voltaje en A0 lee alrededor de 1.55V con un multímetro.

Incluso con 3.3V en A0, solo lee 1016-1017 y sin nada en A0 lee 9, lo cual no está muy fuera de lugar, pero tampoco es muy preciso.

¿Hay algo que no estoy entendiendo y no teniendo en cuenta? Estaría interesado en cualquier conocimiento.

¿Te importa usar el editor de esquemas incorporado para poner el esquema?
"... y sin nada en A0..." - ¿Nada como en pin flotante?
@marcelm Sí. Pero en realidad, la lectura del pin flotante es el menor de los problemas.
Has medido las resistencias? ¿Es el voltaje exactamente 3.3V cuando lo está midiendo? ¿Qué dice la hoja de datos del módulo sobre la tolerancia de entrada analógica?
Sí. Las resistencias parecen dentro de lo permitido. 101.55K y 101.2K. Sí, el voltaje es exactamente 3,3 V con un multímetro y es exactamente 1,65 V en el divisor de voltaje Vout. No tengo la ficha técnica del módulo.

Respuestas (1)

Hay algo que quizás te estés perdiendo: la resistencia de entrada de los puertos analógicos.

esquemático

simular este circuito : esquema creado con CircuitLab

Cuando utiliza tales resistencias de 100k, es posible que deba considerar el efecto que causará en su medición. No encontré el valor de entrada correcto, pero la mayoría de los microcontroladores con entradas analógicas tienen una resistencia de entrada de aproximadamente 1M. Supongamos eso.

Tendrá un circuito de resistencia en paralelo de aproximadamente 90.9k con 100kΩ y 1MΩ en paralelo, lo que hará que la parte inferior de su divisor de voltaje sea menos de la mitad. Entonces el voltaje en el punto de medida será 1.57V. Y 1,57*1023/3,3 = 484 bits.

Y su termistor de 1M empeorará las cosas.

Le aconsejaría que use algo como un amplificador operacional con configuración de búfer para medir lo que desea. Aumentarás tu resistencia de entrada. O podría usar un termistor inferior. Las resistencias con> 1M insertan ruido blanco en su circuito.

esquemático

simular este circuito

Si aún sospecha de algo más, use resistencias de 10k y vea cómo funciona.