#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <TMP36.h>
#include <EEPROM.h>
#include <Keypad.h>
#include <string.h>
int adres = 18;
LiquidCrystal_I2C lcd(0x27, 16, 2);
const byte SatirSayisi = 4; // Satır sayısını gösteren sabiti tanımla
const byte SutunSayisi = 4; // Sütun sayısını gösteren sabiti tanımla
// Tuşları gösteren karakter matrisini tanımla
char setsicaklik[5] = {'0', '0', '*', '#', '0'};
char keys[SatirSayisi][SutunSayisi] = {
  {'1', '2', '3', 'A'},
  {'4', '5', '6', 'B'},
  {'7', '8', '9', 'C'},
  {'*', '0', '#', 'D'}
};
byte SatirPinleri[SatirSayisi] = {13, 12, 11, 10}; // Sırasıyla keypad satır pinlerinin bağlandığı Arduino pinleri
byte SutunPinleri[SutunSayisi] = {9, 8, 7, 6};   // Sırasıyla keypad sütun pinlerinin bağlandığı Arduino pinleri
// keypad1 adında bir keypad nesnesi tanımla
Keypad keypad = Keypad(makeKeymap(keys), SatirPinleri, SutunPinleri, SatirSayisi, SutunSayisi);
#define tus setsicaklik[4]
#define onay setsicaklik[2]
#define sckayr setsicaklik[3]
void setup() {
  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print(" KUBRA CILOGLU");
  lcd.setCursor(0, 1);
  lcd.print(" TMP36 KONTROL");
  delay(1000);
  lcd.clear();
}
void sicaklikayarla() {
  int say = 1;
  int sicaklik;
  tus = keypad.getKey();
  while (onay != tus) {
    lcd.setCursor(0, 0);
    lcd.print("ISI DEGERI GIR  ");
    lcd.setCursor(0, 1);
    lcd.print("SICAKLIK: ");
    tus = keypad.getKey();
    if (tus == onay) {
      sicaklik=atoi(setsicaklik);
      EEPROM.update(adres, sicaklik);
      lcd.clear();
      break;
    }
    if (tus != NO_KEY) {
      if (say == 0) {
        lcd.setCursor(11, 1);
        lcd.print(tus);
        setsicaklik[0] = setsicaklik[1];
        setsicaklik[1] = tus;
        say--;
      }
      if (say == 1) {
        lcd.setCursor(10, 1);
        lcd.print(tus);
        setsicaklik[1] = tus;
        setsicaklik[0] = '0';
      }
      say--;
      if (say < 0) {
        say = 1;
      }
    }
  }
}
void loop() {
  int setvalue=EEPROM.read(adres);
  lcd.setCursor(0, 0);
  lcd.print("SET SCKLK: ");
  lcd.print(setvalue);
  tus = keypad.getKey();
  if (sckayr == tus) {
    sicaklikayarla();
  }
  
}