Ragazzi...altro intoppo. Ecco il codice:
DeviceAddress CollettoreSolare = { 0x28, 0xA3, 0xDA, 0x35, 0x05, 0x00, 0x00, 0x04 };
DeviceAddress BollitoreAlto = { 0x28, 0xEB, 0xCC, 0x35, 0x05, 0x00, 0x00, 0x30 };
Questi sono gli id delle due sonde collegate.
Ora queste due sonde sull'lcd mi stampano un valore con questa funzione:
void LcdTemperature(DeviceAddress deviceAddress) //Funzione che richiede ai dispositivi connessi i valori e li stampa sugli indirizzi su LCD
{ float tempC = sensors.getTempC(deviceAddress);
if (tempC == -127.00) {
lcd.print("Errore falsa tempC");
} else {
lcd.print(tempC);
}
}
e poi:
sensors.requestTemperatures(); // Scarico le temperature dalle sonde
lcd.setCursor(0, 0); //Stampo la temperatura su LCD la temp del Bollitore Alto
lcd.print("BA:");
LcdTemperature(BollitoreAlto);
lcd.setCursor(8, 0); //Stampo la temperatura su LCD la temp del Bollitore Basso
lcd.print("/B:");
LcdTemperature(CollettoreSolare);
Ora questi due valori stampati li vorrei salvare in una variabile che arduino deve conoscere costantemente così da azionarmi un relè al cambio temperatura o meno.
Come posso fare?Ho provato a dichiarare le variabili ma non ci riesco.
In sostanza non riesco a capire come dire ad arduino che in collettore solare o bollitore alto c'è un valore con virgola e che quando uno dei due è maggiore dell'altro deve azionarmi il pin ditigale n.X.
Se faccio la funzione con if ed else mi calcola i valori id e non le temperature. Grazie