Problema progetto serra con Arduino

Salve a tutti, ho quasi completato il programma per il controllo dei parametri di una serra. Lo sketch lo allego sotto, il mio problema è: nella funzione void Avviocontrollo(), precisamente in queste righe di codice

if(time > lettura + 2500){
    lcd.clear();
    DHT11.read(DHT11PIN);
    delay(10);
    lcd.setCursor(0,0);
    lcd.print("Temp.:");
    lcd.setCursor(10,0);
    delay(10);
    lcd.print(DHT11.temperature,DEC);
    lcd.setCursor(0,1);
    lcd.print("Umid.:");
    lcd.setCursor(10,1);
    delay(10);
    lcd.print(DHT11.humidity,DEC); 
    lettura = millis();
}

la lettura e scrittura dei parametri non avviene sempre in maniera corretta ovvero i valori letti dal sensore e scritti sul dispaly sono per esempio Temp. 28 Umid. 50 e dopo 3 o 4 letture scrive sempre Temp. 14 Umid. 144. Sempre, ho provato a mettere Serial.print in tutta la funzione Avviocontrollo ma questi valori non compaiono da nessuna parte. Qualcuno può gentilmente aiutarmi? Grazie

ModificaNesina.ino (16.6 KB)