# =============================================================================
# un convertitore ADC, legge il valore analogico fornito da un potenziometro
# predisposto nel seguente modo e accende uno dei tre led se la posizione del
# potenziometro si trova rispettivamente a 1/3, 2/3, 3/3 del range.
#
# LIVELLO=1; valore del potenziometro da 0/3 a 1/3 = accensione del led verde
# LIVELLO=2; valore del potenziometro da 1/3 a 2/3 = accensione del led giallo
# LIVELLO=3; valore del potenziometro da 2/3 a 3/3 = accensione del led rosso
#
# ESP32: pin32, input ADC
# pin25, out led verde
# pin26, out led giallo
# pin27, out led rosso
# =============================================================================
import machine
import time
import network
from umqtt.simple import MQTTClient
ledR = machine.Pin(25,machine.Pin.OUT)
ledG = machine.Pin(26,machine.Pin.OUT)
ledV = machine.Pin(27,machine.Pin.OUT)
adc = machine.ADC(machine.Pin(32),atten=machine.ADC.ATTN_11DB)
while True:
pot = adc.read()
if pot<4096/3:
msg = "MIN"
ledV.on()
ledG.off()
ledR.off()
elif pot<4096*2/3:
msg = "MED"
ledV.off()
ledG.on()
ledR.off()
else:
msg = "MAX"
ledV.off()
ledG.off()
ledR.on()
print(msg+" POT="+str(pot))
#time.sleep(1)