Bu projemizde nem ve sıcaklığı lcd ekranda nasıl gösteririz bundan bahsedeceğiz.Sıcaklık ve nem ölçümü yıllardır kullanılan bir teknoloji biz bunu arduino ile kendimiz programlayarak yapacağız.Evinizde termostat olarak kullanabileceğiniz bir proje olarak düşünebilirsiniz.Öncelikle bu proje sadece evlerde değil otomobillerde buz dolaplarında bilgisayarlarda ve birçok alanda kullanıma uygundur.Projemizde kullanacağımız malzemelerimize bir göz atalım.
1- Arduino UNO
2- Sıcaklık ve Nem Sensörü
3- LCD
4- Jumper Kablo
I2C dönüştürücü sayesinde karmaşık bağlantılar yerine SDA ve SCL girişlerinden sorunsuz işlerinizi halledebiliyorsunuz.Öncelikle I2C nedir? Inter Integrated Circuit kelimelerinin baş harflerinden gelmeketedir. I2C isim hakkı ise Philips ( NXP ) firmasına aittir. Bu yüzden two wire adıyla da kullanılmaktadır.Bu protokol temel olarak 2 hat vardır. Bunlardan biri SCL diğeri SDA hattıdır. SCl ( SerialClock ) veri senkronu için gerekli saat darbe hattıdır. SDA ise data hattıdır. Ayrıca kendine özgü yazma koruması ( WP ) ve çıkış işin (OE) gibi uçları yani pinleri vardır. SCL lojik 1 iken SDA da lojik 1 dan 0 e kadar olan geçiş start ( başlama ) işlemi yaparken yine SCL 1 lojik durumda SDA lojik 0 dan 1 e olan geçiş stop ( durdurma ) anlamına gelir.
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <dht11.h>
dht11 DHT;
#define DHT11_PIN 4
byte degree[8] =
{
B00111,
B00101,
B00111,
B00000,
B00000,
B00000,
B00000,
};
LiquidCrystal_I2C lcd(0x27,16,2);
void setup()
{
lcd.init();
lcd.backlight();
lcd.createChar(1, degree);
}
void loop()
{
lcd.setCursor(0, 0);
lcd.print("Nem = % ");
lcd.setCursor(11, 0);
lcd.print(DHT.humidity, 1);
lcd.setCursor(0, 1);
lcd.print("Sicaklik = \1C ");
lcd.setCursor(11, 1);
lcd.print(DHT.temperature,1);
int chk;
;
chk = DHT.read(DHT11_PIN);
switch (chk){
case DHTLIB_OK:
break;
case DHTLIB_ERROR_CHECKSUM:
lcd.clear();
lcd.print("hata");
break;
case DHTLIB_ERROR_TIMEOUT:
lcd.clear();
lcd.print("Sure bitti");
break;
default:
lcd.clear();
lcd.print("Bulunamadi");
break;
}
delay(1000);
}
İncelemeler
Henüz inceleme yapılmadı.