Merhaba elimde bir terazi var. Tartım değerini alıp bilgisayara göndermek istiyorum. Terazinin kontrol kartı ile lcd göstergesi I2C ile haberlerşiyor. Aradaki haberleşmeyi analizör ile dinledim. Display adresini buldum (0x1A). Bende kilo bilgisini almak için pic'e aynı slave adresi verdim. Sorun şu ki bağlantıyı yapınca iletişim bozuluyor. Sanırsam display modülüde pic de aynı adres olduğu için aynı anda cevap veriyorlar. Pic'i slave olarak sadece veri almak için nasıl kullanabilirim?
örnek olarak ekranda "25068" yazdığında giden bilgi: (0x1A) 0x02,0x07,0x01,0x02,0x05,0x00,0x06,0x08
ayar: #use i2c(Slave,Fast,sda=PIN_C4,scl=PIN_C3,force_hw,address=0x1A)
(https://i.ibb.co/zNdMSnq/ledgostergesema.jpg) (https://ibb.co/zNdMSnq)
.
Yanlızca sniff etmek gerek,
I2C için yapılırmı?
Ben hiç yapmadım ama niçin olmasın
i2c sniffer diye aratınca birşeyler çıkıyor.
http://en.radzio.dxp.pl/i2c-sniffer/
Analizörünüz I2C adresi 7 bit mi okuyor, 8 bit mi (r/w bitiyle beraber) okuyor?
Alıntı yapılan: certy - 11 Mart 2020, 09:18:28Analizörünüz I2C adresi 7 bit mi okuyor, 8 bit mi (r/w bitiyle beraber) okuyor?
SDA sinyalini pic e optokuplör ile iletsem düzgün çalışır mı acaba
(https://i.ibb.co/kD7YdKB/Screenshot-16.jpg) (https://ibb.co/kD7YdKB)
(https://i.ibb.co/xSpffGf/IMG-20200312-215135761.jpg) (https://ibb.co/xSpffGf)
Bir tane "schottky diode" iş görür mü acaba?
denedim sonuç alamadım
Denemedim ama bana sanki tek yönlü open drain çıkışlı bir buffer işi çözer gibi geldi. Dinleyici konumdaki PIC, buffer'ın çıkış tarafında olacak. Elbette buffer ve PIC arasındaki I2C hattında da pullup dirençleri olacak. 74??07 gibi bir şey olabilir. Ortalıkta pek bulunmuyor gibi gerçi. Özdisan'da SN7407DR var.
Programda ,cevap veren satırları kapatıp denediniz mi?