#include <LiquidCrystal_I2C.h>
#define buzzer 13
#define ledmerah 12
const float BETA = 3950;

LiquidCrystal_I2C lcd(0x27,20,4);
void setup() {
  pinMode(ledmerah, OUTPUT);
  pinMode(buzzer, OUTPUT);
  tone(13,300,1000);
  digitalWrite(ledmerah, HIGH);
  delay(500);
  digitalWrite(ledmerah, LOW);
  delay(500);
  Serial.begin(9600);
  lcd.init();
  lcd.backlight();
  lcd.setCursor(3,0);
  lcd.print("Papan Informasi");
  lcd.setCursor(3,1);
  lcd.print("Suhu Sensor NTC");
  lcd.setCursor(8,2);
  lcd.print("oleh");
  lcd.setCursor(2,3);
  lcd.print("A. Mukhlis Anshori");
  delay(3000);
  lcd.clear();
  
  // put your setup code here, to run once:

}

void loop() {
 int analogValue = analogRead(A0);
  float celsius = 1 / (log(1 / (1023. / analogValue - 1)) / BETA + 1.0 / 298.15) - 273.15;
  if(celsius > 38){
  tone(13,1000,1000);
  digitalWrite(ledmerah, HIGH);
  lcd.setCursor(3,0);
  lcd.print("Papan Informasi");
  lcd.setCursor(3,1);
  lcd.print("Suhu Sensor NTC");
  lcd.setCursor(0,2);
  lcd.print("Suhu : ");
  lcd.setCursor(8,2);
  lcd.print(celsius);
  lcd.setCursor(18,2);
  lcd.println("C");
  lcd.setCursor(3,3);
  lcd.print("SMAN 2 Ponorogo");
  delay(1000);
    } 
    else{
    if(celsius < 20){
  tone(13,1000,1000);
  digitalWrite(ledmerah, HIGH);
  lcd.setCursor(3,0);
  lcd.print("Papan Informasi");
  lcd.setCursor(3,1);
  lcd.print("Suhu Sensor NTC");
  lcd.setCursor(0,2);
  lcd.print("Suhu : ");
  lcd.setCursor(8,2);
  lcd.print(celsius);
  lcd.setCursor(18,2);
  lcd.println("C");
  lcd.setCursor(3,3);
  lcd.print("SMAN 2 Ponorogo");
  delay(1000);}
  else{
  digitalWrite(ledmerah, LOW);
  lcd.setCursor(3,0);
  lcd.print("Papan Informasi");
  lcd.setCursor(3,1);
  lcd.print("Suhu Sensor NTC");
  lcd.setCursor(0,2);
  lcd.print("Suhu : ");
  lcd.setCursor(8,2);
  lcd.print(celsius);
  lcd.setCursor(18,2);
  lcd.println("C");
  lcd.setCursor(3,3);
  lcd.print("SMAN 2 Ponorogo");
  delay(1000);  
  }  
    }

}