bool slaveAktif = true;
bool oku(int *);
int sure = 0;
void setup(){
Serial.begin(115200);
}
void loop(){
if(slaveAktif || sure%60 == 0){
int sicaklik = 0;
Serial.println("Sıcaklık okunuyor");
slaveAktif = oku(&sicaklik);
Serial.print("Okunan sıcaklık: ");
Serial.println(sicaklik);
}
else{
Serial.println("Slave bağlı değil");
sure++;
}
delay(1000);
}
bool oku(int *data){
Serial.setTimeout(1000);
int read_attempts = 4;
String temp="";
while(read_attempts>0){
read_attempts--;
temp = Serial.readStringUntil('\n'); //Satır olarak okur
if(temp == ""){
Serial.print("Tekrar deneniyor....(");
Serial.print(read_attempts);
Serial.println(")");
}
}
if(temp != ""){
*data = temp.toInt();
sure = 0;
return true;
}
else{
return false;
}
}