#include <Wire.h>
#include <Adafruit_SSD1306.h>
#include <DHT.h>
// ------ إعدادات الشاشة OLED ------
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
// ------ تعريف المستشعرات ------
#define VOLTAGE_SENSOR_PIN 32
#define CURRENT_SENSOR_PIN 34
#define FLAME_SENSOR_PIN 33
#define LDR_SENSOR_PIN 35
#define DHT_PIN 4
#define DHT_TYPE DHT22
DHT dht(DHT_PIN, DHT_TYPE);
void setup() {
Serial.begin(115200);
// تهيئة الشاشة OLED
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println("فشل في تشغيل الشاشة!");
for (;;);
}
// بدء تشغيل DHT22
dht.begin();
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0, 10);
display.println("System Ready...");
display.display();
delay(2000);
}
void loop() {
// قراءة القيم من المستشعرات
float voltage = analogRead(VOLTAGE_SENSOR_PIN) * (3.3 / 4095.0);
float current = analogRead(CURRENT_SENSOR_PIN) * (3.3 / 4095.0);
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
int flame = digitalRead(FLAME_SENSOR_PIN);
int lightIntensity = analogRead(LDR_SENSOR_PIN);
// طباعة القيم في Serial Monitor
Serial.println("----- Sensor Readings -----");
Serial.printf("Voltage: %.2fV\n", voltage);
Serial.printf("Current: %.2fA\n", current);
Serial.printf("Temperature: %.2fC\n", temperature);
Serial.printf("Humidity: %.2f%%\n", humidity);
Serial.printf("Flame: %s\n", flame ? "🔥 Detected!" : "No Fire");
Serial.printf("Light Intensity: %d\n", lightIntensity);
Serial.println("---------------------------");
// عرض القيم على الشاشة OLED
display.clearDisplay();
display.setTextSize(1);
display.setCursor(0, 0);
display.println("Sensor Readings:");
display.printf("V: %.2fV\n", voltage);
display.printf("I: %.2fA\n", current);
display.printf("T: %.2fC\n", temperature);
display.printf("H: %.2f%%\n", humidity);
display.printf("F: %s\n", flame ? "🔥" : "OK");
display.printf("L: %d\n", lightIntensity);
display.display();
delay(3000); // تحديث البيانات كل 3 ثوانٍ
}
Current Sensor
Flame Sensor
Humidity Sensor
Light Intensity Sensor
Temperature Sensor