#include <LiquidCrystal_I2C.h>
#include <Servo.h>
LiquidCrystal_I2C lcd (0x27, 16, 2);
int btnec = 13;
int btnap = 12;
Servo ser;
int pinservo = 3;
int ledro = 11;
int ledam = 10;
int ledaz = 9;
void setup() {
  pinMode(btnec, INPUT);
  pinMode(btnap, INPUT);
  pinMode(ledro, OUTPUT);
  pinMode(ledam, OUTPUT);
  pinMode(ledaz, OUTPUT);
  ser.attach(pinservo);
}

void loop() {
  int valuebtn2 = digitalRead(btnap);
  int valuebtn = digitalRead(btnec);

  if (valuebtn == HIGH) {
    lcd.begin(16, 2);
    lcd.init();
    lcd.backlight();
    lcd.setCursor(0, 0);
    lcd.print("Temperatura:");

  }

  int value = analogRead(A0);
  float c = 1 / (log(1 / (1023. / value - 1)) / 3950 + 1.0 / 298.15) - 273.15;
  lcd.setCursor(0, 1);
  lcd.print(c);
  lcd.setCursor(6, 1);
  lcd.print("C");

  if (valuebtn2 == HIGH) {
    delay(500);
    lcd.clear();
    lcd.noBacklight();
    lcd.noDisplay();
    ser.write(90);
    digitalWrite(ledam, LOW);
    digitalWrite(ledro, LOW);
    digitalWrite(ledaz, LOW);

  }

  if (c >= -24 && c < 10) {

    digitalWrite(ledaz, HIGH);
    digitalWrite(ledam, LOW);
    digitalWrite(ledro, LOW);
    ser.write(0);
  }

  if (c >= 10 && c < 44) {

    digitalWrite(ledaz, LOW);
    digitalWrite(ledro, LOW);
    digitalWrite(ledam, HIGH);
    ser.write(90);
  }

  if (c >= 44 && c < 81) {

    digitalWrite(ledaz, LOW);
    digitalWrite(ledro, HIGH);
    digitalWrite(ledam, LOW);
    ser.write(180);
  }

}