Stm32 · Aralık 19, 2014 0

DHT11 STM32F4

Genelde lm35 yada 1820 ile çalıştığımdan hiç örneğim yoktu. Elimizde bulunsun değilmi. SHT11 gibi PAHALI bir sensörü kullanmaktansa

dht11   kullanılabilir. Bu açıdan iyi bir seçim olduğunu düşünüyorum, fiyatı yaklaşık 1,5usd :). datashit
Sensör one wire çalışıyor. Bilinen onewire da MCU tarafından start bit gönderildiğinde Sensör tarafından bir adres gönderilir. bunda öyle bir durum yok. Mcu tarafından gönderilen start tan sonra Sensör “Veri Gönderimi hazır” anlamında 0-1 den okulan iki sinyal gönderiyor. Ardından 40 bitlik veriyi aynı hattan MCU ya gönderimini sağlıyor. bu 40 bir 8bit Nem,8bit NemOndalık, 8bit Sıcaklık,8Bit SıcaklıkOndalık ve son 8 bit veri doğruluğudur.
VeriDoğruluğu (CheckSum)=Rh+RhDec+Temp+TempDec
şeklinde hesaplanır
 
 
MCU ile bağlantısında ise Data ile VCC uçlarının arasına bir pullup direnci konulması gerekir. Sensör 3.3v yada 5 v ile çalışabiliyor.
OW bilindiği üzere sinyalin lojik seviyesinden değil sinyaldeki lojik 1 lerin süresiyle bilginin değerini hesaplıyor. bundan dolayı bu süreleri hesaplamak için bir timer kullanmak gerekti (tim2) bıu timer ı 1mikrosaniye lik sayma peryotlarına ayarldım. bunu yapabilmek için tabiki systemclock un bilmemiz gerekti (168mhz).

 
 

 

 

[EKLEME]:
Projeyi daha sonra DHT22 ile hazırlayıp SeriBlueTooth (HC05) ile pc ye gönderdim. Proje Kodları için Tıklayınız

Ziyaretci : 2330