PCF8591 ADC entegresi kullanımı

cemalb

Üye
Katılım
9 Eki 2019
Mesajlar
126
Puanları
1
Merhabalar.
PCF8591 entegresi ile ADC ölçümü yapıp mikrodenetleyiciye göndermek istiyorum. Nakıs ingilizcem ile datasheet'ten anladıklarımı uygulamaya çalıştım ama beceremedim. Bu entegrenin kullanımını bilenler varsa yardımcı olabilir mi?
 
heberleşmede mi sorun var yoksa a/d çevrimdemi.
Mikrokontrollerin adc sini neden kullanmadınız.
 
Bir mcunun I2C pinlerine SDA,
SCL, gnd ve Vcc pinlerini
bağlıyorsunuz.
Program ile I2C adresinden istediğiniz
kanalı okuyabilirsiniz. Hatta bir
kanal 5bit DAC ile analog gerilim
çıkarabilirsiniz.
 
heberleşmede mi sorun var yoksa a/d çevrimdemi.
Mikrokontrollerin adc sini neden kullanmadınız.
-Elimdeki kartta mikrodenetleyicinin ADC pinleri için yol çizilmemiş. O yüzden dahili ADC yi kullanamıyorum.
-I2C protokolünü de, entegreyi de ilk defa kullanıyorum. ikisinde de sorun yaşıyor olabilirim. Ama sanırım entegere ile ilk haberleşmeyi doğru yaptım. Çünkü kullandığım I2C kütüphanesinde test fonksiyonu var. Bağlantı kurulursa 0 değeri döndürüyor. Bu kısmı başardım. Şimdi entegreye istediğim kanal için çevirim yaptırıp çevrim sonucunu okumak istiyorum. I2C'den sırası ile ne yollayıp ne okumam gerek tam anlamadım.
 
I2C 'ye veri yazmak için ilk önce 0x48 değerini gönderiyor iki örnektede. Ama datasheetteki bu tabloya göre 0x90 gönderilmesi gerekmiyor mu?
111.png

-Yüksek 4 bit değeri zaten sabit olarak '1001'
-A2,A1,A0 değerleri de '000'
-Son bit write işlemi olduğu için '0' olacak. Yani entegreye göncerilecek ilk byte değeri 0x90 olması lazım değil mi? Niçin iki örnekte de 0x48 gönderilmiş??
 
0x90>>1 yapınca 0x48 olmuş.
yani sağa 1 bit kaydırmış.
 
datasheetten gösterdiğim yerdeki bilgiye göre 0x90 olması gerek gibi geldi banada.
 
yok hocam 0x48 ile de olmadı. ama 0x90 ile de olmadığı için hata başka yerde demekki. Bu akşam bulacağım inşallah :)
 

Forum istatistikleri

Konular
127,954
Mesajlar
913,892
Kullanıcılar
449,604
Son üye
baba pero

Yeni konular

Geri
Üst