#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
float flamelevel = 0;
#define greenLED 7
#define redLED 2
const int firingHigh = 50;
const int firingLOW = 5;
void setup() {
lcd.init();
lcd.clear();
lcd.backlight();
pinMode(greenLED, OUTPUT);
digitalWrite(greenLED, LOW);
pinMode(redLED, OUTPUT);
digitalWrite(redLED, LOW);
pinMode(A2, OUTPUT);
}
void loop()
{
float analogValue = analogRead(A0);
flamelevel = map(analogValue, 0, 1024, 100, 0);
lcd.setCursor(0, 0);
if ((flamelevel < firingHigh ) && ( flamelevel > firingLOW))
{
lcd.clear();
lcd.print("Risque");
digitalWrite(greenLED, LOW);
digitalWrite(redLED, HIGH);
delay(300);
digitalWrite(redLED, LOW);
delay(300);
}
if (flamelevel >= firingHigh)
{
lcd.print("Incendie");
digitalWrite(redLED, HIGH);
digitalWrite(greenLED, LOW);
tone(A2, 9397, 1000);
}
if (flamelevel <= firingLOW)
{
lcd.print("Normal");
digitalWrite(greenLED, HIGH);
digitalWrite(redLED, LOW);
}
}