from machine import ADC, Pin
import time
class LDR:
def __init__(self, pin, min_value=0, max_value=100):
if min_value >= max_value:
raise Exception('Min value is greater or equal to Max value')
self.adc = ADC(Pin(pin))
self.adc.atten(ADC.ATTN_11DB)
self.min_value = min_value
self.max_value = max_value
def read(self):
return self.adc.read()
def value(self):
return(self.max_value - self.min_value)* self.read()/4095
ldr = LDR(35)
led1 = Pin(2, Pin.OUT)
led2 = Pin(4, Pin.OUT)
led3 = Pin(5, Pin.OUT)
while True:
value = ldr.value()
print('Value = {}'.format(value))
time.sleep(0.5)
if value <= 25:
led1.on()
led2.off()
led3.off()
elif value <= 75:
led1.off()
led2.on()
led3.off()
elif value <= 100:
led1.off()
led2.off()
led3.on()
else:
led1.off()
led2.off()
led3.off()