Actualmente tienes un cableado extraño de las ollas que estás intentando leer. Pero su ORing de diodo da como resultado dos diodos que se introducen en una entrada de alta impedancia. No ha publicado ninguna información de control o tiempo sobre cómo conduce GPIO4 y GPIO5 o por cuánto tiempo, por lo que no puedo ser definitivo. Pero parece que la capacitancia de la entrada A0 de alta impedancia está cargada por los diodos cuando maneja la lógica alta de GPIO4 / GPIO5, entonces esa capacitancia es descargada por la corriente de fuga de entrada A0 y la corriente de fuga inversa del diodo cuando maneja GPIO4 / GPIO5 lógica baja o tri-estado. Eso resultaría en la forma de onda que estás viendo. Ya sea que se trate o no, todos estos defectos deben eliminarse del circuito.
Intente volver a cablear su circuito para producir lo siguiente. He mostrado diodos de señal 1N4148 pero puede usar sus diodos rectificadores UF4007 si tiene que hacerlo.
simular este circuito : esquema creado usando CircuitLab
La rutina del software debería ser algo como:
Drive GPIO4 logic high.
Drive GPIO5 logic low.
Wait for x us settling time.
Read ADC to get R1 measurement.
Drive GPIO4 logic low.
Drive GPIO5 logic high.
Wait for x us settling time.
Read ADC to get R2 measurement.
Las lecturas tendrán un error en ellas debido a la caída incorrecta del diodo. Su sistema deberá tener esto en cuenta y tolerar el error, si es posible.
El tiempo de establecimiento requerido se debe a que la resistencia del recipiente seleccionado tendrá que cargar la capacitancia de entrada A0 y cualquier capacitancia parásita en sus cables, etc. Si tiene la capacidad de trazar gráficos del voltaje de entrada A0, que parece tener. su pregunta, luego puede medirla, digamos, 5 ms y determinar el tiempo de establecimiento requerido. Agregue un margen generoso al valor que encuentre, digamos 20%, para permitir variaciones en la capacidad del circuito y las tolerancias de los componentes.
R3 está ahí para que D1 y D2 estén pasando corriente. De lo contrario, pueden estar impulsando un pin de entrada IC de alta impedancia. Cuanto menor sea el valor R3, mayor será la corriente del diodo y más estable será la caída del diodo. (Eso es una consideración solo en estas corrientes muy bajas). Cuanto mayor sea el valor R3, menor será el error que introduce en el voltaje de salida del divisor de potencial R1 o R2. Si puede, cambie R1 y R2 a, digamos, 1 K y R3 a, digamos, 22 K.