#include <Arduino.h>
#include <LiquidCrystal.h>
// RS, E, D4-D7
LiquidCrystal lcd(PA2, PA3, PA4, PA5, PA6, PA7);
// Pin sensor gas MQ-2
const int mq2Pin = PA1; // AO pin dari MQ-2 (Analog Output)
// Batas aman/bahaya untuk gas (misalnya CO)
const int threshold = 600; // Ambang batas untuk level gas, bisa disesuaikan
void setup() {
lcd.begin(16, 2); // Inisialisasi LCD 16x2
lcd.clear(); // Membersihkan layar LCD
lcd.setCursor(0, 0); // Set posisi cursor di LCD
lcd.print("MQ-2 Gas Sensor");
delay(2000); // Tampilkan "MQ-2 Gas Sensor" selama 2 detik
Serial.begin(9600); // Mulai serial monitor untuk debugging
}
void loop() {
int gasValue = analogRead(mq2Pin); // Baca nilai gas dari MQ-2
// Menampilkan nilai gas di baris kedua LCD
lcd.setCursor(0, 1);
lcd.print("Gas: ");
lcd.print(gasValue); // Tampilkan nilai gas (0-1023)
// Menentukan status gas (Aman/Bahaya)
lcd.setCursor(0, 1); // Pindah ke baris pertama untuk status
if (gasValue > threshold) {
lcd.print("Bahaya!! "); // Jika gas > threshold, tampilkan "Bahaya"
} else {
lcd.print("Aman "); // Jika gas < threshold, tampilkan "Aman"
}
Serial.println(gasValue); // Menampilkan nilai sensor di Serial Monitor
delay(1000); // Tunggu selama 1 detik
}
Loading
stm32-bluepill
stm32-bluepill