sht 11 problem

Başlatan erayurtseven, 10 Nisan 2014, 01:27:29

erayurtseven

stm32f107 ile sıcaklık ölçmeye çalışıyorum. Haberleşme konusunda sıkıntılarım var. Hatta start condition gönderiyorum. Ardından sıcaklık okuma
komutunu göderiyorum ve sensör bana ack gönderiyor.(data hattını low a çekiyor.) Daha sonra sensör data hattını high a çekerek ortalama 100 ms ölçüm yapması lazım. Ölçüm bittikten sonra data hattını low a çekmeli. Ancak benim sensör hattı hiç high a çekmiyor.

iki sorum olacak. Birincisi: Hazır board kullanıyorum. GPIO pinleri pull up lı olduğunu düşünüyorum. Data ve clock hattı 1.8 V. Haberleşme için yeterli mi. Yoksa pin puul up lı değil mi ?

ikincisi: Haberleşme için en uygun clock frekansı nedir ?

Saygılar

Kabil ATICI

4.5V'un üstünde 0-5MHz aralığında 4.5V'un altındaki besleme için 0-1MHZ aralığı önerilmiş ki tipik olarak 100KHz .

pull up konusunda emin olmak gerek.

Sensörün beslemesi 2.4 ile 5.5V aralığı belirtilmiş... (tipik 3.3V)
Lojik seviyeler ise
besleme gerilimine göre verilmiş.
lojik 0 için iş kolay
ama lojik 1 için minimum
girişte %80VDD
çıkışta %90VDD olarak belirtilmiş.
buna göre senin sensör aslında ack göndermiyor. (sistemi kilitliyor) Çünkü ack durumu sadece 1 saat darbesi kadar sürer.
ambar7

erayurtseven

teşekkürler. Ben dışardan data ve VDD arasına 10kohm bağladığımda hat gerilimi değişmiyor. Yani hala 1.8 volt. Bu değeri nasıl yükseltebilirim.

Kullandığım board STM3210c eval.

GPIO çıkışlarından 1,8 Volt geliyor hep.

MCansız


sht11 ile protonda bir proje yaptım smd oldugundan hazır kit almıştım aşagıda linki var
http://www.robotistan.com/SHT11-Isi-ve-Nem-Sensoru-Karti,PR-1212.html

eger sizde bunu kullanıyor iseniz pull up dirençleri çalışmıyor direnç kısa devre  benim sorun bu şekilde çözülmüştüm size önerim kart üzerindeki direnç değerini ölçün ve pull up direnci kullanın

Kabil ATICI

@erayurtseven
Bu kartı tam tanıdığımı söyleyemem...
kartın veri kağılarını incelediğim kadarı ile sistem 3,3V ile çalışıyor görünüyor...
2 tane i2c olduğu belirtilmiş hangisini kullandığını bilememekle birlikte PB6 ve PB7'deki i2c için
R132 sökülmesinden -özel bir durum için(PB7 için) ve PB6 üzerindeki JP9 jumper'dan bahsediliyor.

tabii sen doğru bağlantıları yapmış olduğunu kabul ediyoruz...
normal bir çalışma olarak i2c bağlantılarını lojik 0 ve lojik1 için gerelim seviyelerini kontrol et... 3.3V olan bir sistem için bu seviyenin 1.8V olması biraz garip geldi...
ambar7

erayurtseven

Daha önce bu boarddaki i2c ile çalıştım yani jumper konfigurasyonlarını biliyorum ancak sht11 tam i2c ile çalışmadığı için, Boarddaki i2c peripherel ı kullanmıyordum. Ancak diğer pinleri de 3.3 V a çıkaramadım.  Yani saçmalamışım.

Bugün denedim. I2C1 pinlerini kullandığımda 3.2 V a çıktı. Teşekkürler.

Ancak daha haberleşme kısmını tam bitirmedim :)




erayurtseven

@mk_29
vakit ayırdığın için teşekkürler. Pull up problemini şimdilik çözdüm gibi.