#define MQ2pin 8 // Digital output MQ2
#define MQ2_ANALOG A0 // Analog output MQ2
#define LED_PIN 3 // LED indikator
int digitalValue; // nilai digital MQ2
int gasValue; // nilai analog MQ2 (simulasi ppm)
void setup() {
Serial.begin(9600);
Serial.println("MQ2 warming up...");
delay(200); // warm up sensor
pinMode(MQ2pin, INPUT); // Digital pin MQ2
pinMode(MQ2_ANALOG, INPUT);// Analog pin MQ2
pinMode(LED_PIN, OUTPUT); // LED sebagai output
}
void loop() {
// --- Membaca nilai digital MQ2 ---
digitalValue = digitalRead(MQ2pin);
// --- Membaca nilai analog MQ2 ---
gasValue = analogRead(MQ2_ANALOG);
// --- Tampilkan ke serial monitor ---
Serial.print("Digital Output: ");
Serial.print(digitalValue);
if (digitalValue) {
Serial.print(" | Smoke: -");
} else {
Serial.print(" | Smoke: Detected!");
}
Serial.print(" | Gas Value: ");
Serial.println(gasValue);
// --- Logika LED indikator gas ---
if (gasValue > 400) {
digitalWrite(LED_PIN, HIGH); // LED menyala
} else {
digitalWrite(LED_PIN, LOW); // LED mati
}
delay(2000); // jeda 2 detik
}