from machine import Pin, ADC
from utime import sleep
sensor = ADC(Pin(28))
digit = Pin(4, Pin.OUT)
GAMMA = 0.7
RL10 = 50
while True:
voltage = sensor.read_u16() / 65536 * 5 # 실제로 lux에서 측정한 빛의 밝기를 전압 형태로 전환해서 전달,
# 변환된 형태가 ADC 센서 통해서 실제로 핀에 전달되는 형태. u_16 -> wokwi에서는 해당 analog 값을 (0,65536] 사이
# 값으로 바꾸어 전달한다는 사실을 알 수 있다. 해상도는 대충 2^15.
# 실제 센서에서는 (0,1024] 사이 값으로 변환.
# 5V max전압으로 상정,
registance = 2000 * voltage / (1-voltage/5) # 저항값 계산
lux = (RL10 * 1e3 * (10 ** GAMMA) / registance) ** (1/GAMMA) # 이런 식으로 식 구현한다는 예시
print(lux)
print(digit.value())
sleep(1)