from machine import ADC, Pin
from time import sleep
# 1. تعريف المنافذ
# LDR موصل بـ GP26 (منفذ ADC0)
ldr_pin = ADC(28)
# الجرس موصل بـ GP20
buzzer_pin = Pin(20, Pin.OUT)
# 2. تحديد العتبة
# القيمة التناظرية لـ Pico تتراوح من 0 (0V) إلى 65535 (3.3V).
# القيمة 40000 هي قيمة تقريبية تشير إلى "الظلام" أو إضاءة منخفضة.
# **ملاحظة:** ستحتاج لتجربة هذه القيمة على Wokwi وتعديلها.
THRESHOLD = 40000
print("LDR Alarm Circuit Started")
def play_alarm():
# تشغيل الجرس بنغمة بسيطة
buzzer_pin.value(1) # تشغيل الجرس (HIGH)
sleep(0.1)
buzzer_pin.value(0) # إيقاف الجرس (LOW)
sleep(0.1)
while True:
# 3. قراءة قيمة LDR
ldr_value = ldr_pin.read_u16()
print("LDR Value:", ldr_value)
# 4. منطق الإنذار: إنذار يعمل عند الظلام
# كلما زادت قيمة ldr_value، قل الضوء (وحدات LDR Module تعطي جهد عالي في الظلام).
if ldr_value > THRESHOLD:
print("!!! DARKNESS DETECTED - ALARM ON !!!")
play_alarm() # تشغيل صوت الإنذار
else:
# إطفاء الجرس إذا كان الضوء كافياً
buzzer_pin.value(0)
sleep(0.5)