#define led 32 // LED أحمر
#define button 27 // الزر الأخضر
#define ldrPin 2 // حساس الضوء
#define potPin 35 // البوتينشيومتر
#define purpleLed 4 // LED بنفسجي
#define yellowLed 5 // LED أصفر
void setup() {
pinMode(led, OUTPUT);
pinMode(button, INPUT);
pinMode(purpleLed, OUTPUT);
pinMode(yellowLed, OUTPUT);
Serial.begin(115200);
Serial.println("Hello, ESP32!");
}
void loop() {
// تشغيل اللمبة الحمراء عند الضغط على الزر
if (digitalRead(button) == HIGH) {
digitalWrite(led, HIGH);
delay(500);
digitalWrite(led, LOW);
delay(500);
} else {
digitalWrite(led, LOW);
}
// قراءة من حساس الضوء
int light = analogRead(ldrPin);
Serial.print("LDR Value: ");
Serial.println(light);
// لو الإضاءة ضعيفة، شغل اللمبة البنفسجية
if (light < 1000) {
digitalWrite(purpleLed, HIGH);
} else {
digitalWrite(purpleLed, LOW);
}
// قراءة من البوتينشيومتر
int potValue = analogRead(potPin);
Serial.print("Potentiometer: ");
Serial.println(potValue);
// لو البوتينشيومتر قيمة عالية شغل اللمبة الصفراء
if (potValue > 2000) {
digitalWrite(yellowLed, HIGH);
} else {
digitalWrite(yellowLed, LOW);
}
delay(100); // Delay صغير علشان التحديثات
}