BaRBaRYaN adlı üyeden alıntı: mesajı görüntüle
dereceyi neden fahrenayt olarak okutuyorsunuz. doğrudan santigrat olark okutabilirsiniz
.
sizin kodunuza göre söyleyeyim. f değeriniz sıcaklık
önce f yi santigrat a çevirip sonra
if(f>=25)
{
motor kodları
}
şeklinde çözebilirsiniz.
ŞURAYI inceleyebilirsiniz.
readTemperature(true) olunca fahrenheit okuyordu readTemperature() olarak güncelledim. Bu durumda derece göstermesi gerekiyor. Malzeme siparişleri muhtemelen yarın gelmiş olacak ozaman deneyeceğim



// Kütüphane kodları
#include <LiquidCrystal.h>
#include "DHT.h"

// Sıcaklı ve nem sensörü dht11'in pinini belirler.
#define DHTPIN 8

// Displayin kütüphaneden veri okuması için gerekli pin başlatma numaraları
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);

void setup() {
// Displayin sütun ve satır sayısını belirler.
lcd.begin(16, 2);
dht.begin();
// Vantilatör takılan motorun çıkış pini
pinMode(7,OUTPUT);
// Ekrandaki göstergeler
lcd.print("Sıcaklık: Nem:");
}

void loop() {

delay(500);
// Gösterge 1.satırda, Sayım değerleri ise 2.satırda göster
lcd.setCursor(0, 1);
// Nem Ölçümü
float n=dht.readHumidity();
// Derece Ölçümü
float s=dht.readTemperature();
// Derece 25'ten fazlaysa motoru çalıştır
if (s>25) {
digitalWrite (7, HIGH);
}
else {
digitalWrite (7, LOW);
}
// Eğer NaN değer alınırsa ekranda hata yazacak.
if (isnan(n) || isnan(s)) {
lcd.print("HATA");
return;
}

lcd.print(s);
lcd.setCursor(7,1);
lcd.print(n);
}
Son hali bu şekilde