# ex_3_3_03_soil_moisture.py (จำลอง: https://wokwi.com/projects/469816150487123969)
from machine import ADC, Pin
import time
soil = ADC(Pin(34)) # เซนเซอร์ความชื้นดินที่ GPIO34 (ADC1, input เท่านั้น)
soil.atten(ADC.ATTN_11DB)
DRY_CAL = 3150 # ค่าดิบเมื่อแห้งสนิท (วัดกลางอากาศ) — ต้องสอบเทียบเองทุกตัว
WET_CAL = 1250 # ค่าดิบเมื่อจุ่มน้ำ — ต้องสอบเทียบเองทุกตัว
while True:
raw = soil.read()
percent = (DRY_CAL - raw) / (DRY_CAL - WET_CAL) * 100 # แห้ง=0%, เปียก=100%
percent = max(0.0, min(100.0, percent)) # จำกัดขอบเขต 0-100
print("ค่าดิบ: {} ความชื้นดิน: {:.1f}%".format(raw, percent))
time.sleep(1)