nid69ita:
Beh, prima di tutto quella funzione deve ora "ritornare" il valore e non tenerlo per se.float LcdTemperature(DeviceAddress deviceAddress)
{ float tempC = sensors.getTempC(deviceAddress);
if (tempC == -127.00) {
lcd.print("Errore falsa tempC");
} else {
lcd.print(tempC);
}
return(tempC);
}
Ora nel programma potrai memoriazzare i valori temperatura e poi confrontarli:lcd.setCursor(0, 0); //Stampo la temperatura su LCD la temp del Bollitore Alto
lcd.print("BA:");
TempBoll=LcdTemperature(BollitoreAlto);
lcd.setCursor(8, 0); //Stampo la temperatura su LCD la temp del Bollitore Basso
lcd.print("/B:");
TempColl=LcdTemperature(CollettoreSolare);
Mi da questo errore:
Funzione_Sensori.ino: In function 'void LcdTemperature(uint8_t*)':
Funzione_Sensori:63: error: return-statement with a value, in function returning 'void'
Se poi scrivo solo return; mi da quest'altro errore:
Funzione_Sensori.ino: In function 'void loop()':
Funzione_Sensori:76: error: void value not ignored as it ought to be
Funzione_Sensori:80: error: void value not ignored as it ought to be
selezionandomi questa parte di codice:
lcd.setCursor(0, 0); //Stampo la temperatura su LCD
lcd.print("BA:");
TempBollAlto=LcdTemperature(BollitoreAlto);
lcd.setCursor(8, 0); //Stampo la temperatura su LCD
lcd.print("/B:");
TempCollSolare=LcdTemperature(CollettoreSolare);