Soru:
2 x MCP23017 nasıl kullanılır?
EV-O
2014-03-15 05:58:08 UTC
view on stackexchange narkive permalink

32 L.E.D'yi tek tek kontrol etmem gerekiyor, şimdi foruma bakıyorum, yaygın çözüm, 16 li.e.d'leri kontrol edebildikleri için MCP23017 çipleri kullanmak. Bunu göz önünde bulundurursak, iki çipe ihtiyacım olacaktı.

Öyleyse herhangi biri iki yonganın nasıl entegre edileceğine dair bir tavsiye, bir kılavuz bağlantısı, örnek bir senaryo vb. Sunabilir.

Her iki I 2 C pinini de kullanmam gerekir mi?

üç yanıtlar:
Ron4326
2014-03-15 11:03:31 UTC
view on stackexchange narkive permalink

Bunu deneyin ... RPi i2c pinlerinden, SDA ve SCL için herhangi bir devre tahtası bağlantı noktasına (yatay sütunlar veya dikey sıralar) bağlantı verin, buradan her iki MCP yongasının SDA ve SCL'sine 2 kablo olabilir. . Her iki bağlantı noktası genişletici yonga için 2 ayrı adres ayarlayın. ör. A0, A1, A2.

Şuna bir bakın .... http://www.raspberrypi-spy.co.uk/2013/07/how-to-use-a- mcp23017-i2c-port-expander-with-the-raspberry-pi-part-1 /

Sanırım önerdiğiniz şeyi takip ediyorum, bağlantıya bir göz atıyorum, panoyu Fritzing'e bağladım ama çok fazla l.e.d olduğu için 5V kaynağı kullandım. ne düşünüyorsunuz! [Resim bağlantısı] (http://s9.postimg.org/68cudfya7/circuit_test_bb.png) http://s9.postimg.org/68cudfya7/circuit_test_bb.png
Bu bağlantı benim için açılmıyor, eğitim filtresi onu engelliyor olabilir, emin değilim. Her neyse, LED'leri yakmak için 330 ohm ile 1 Kohm arasında değişen dirençler kullanabilirsiniz. LED'ler genellikle (1.5-2.5) V aralığında voltajlara sahiptir, bu nedenle ur 5V dirençlerle ilgili bir sorun olmayacaktır. İstediğin bu mu emin değilim.
2x 4.7k pull-up dirençlerine ihtiyacınız yok mu 5v SDA ve SCL?
Pull-up'lar orada 3v3'e bağlı, harici olarak sağlamamıza gerek yok.
John La Rooy
2014-03-15 10:50:02 UTC
view on stackexchange narkive permalink

Hayır, A0 / A1 / A2 pimleri ayrı ayrı yüksek / alçak bağlanabilir, böylece aynı otobüste MCP23017'de 8'e kadar sahip olabilirsiniz

enter image description here

Teşekkürler John, o zaman onlara kolayca bir adres vereceğim. Fritzing'de bir prototip yaptım, l.e.d'lerin miktarı için 5V ile güçlendirdim. Bu size doğru geliyor mu? Http: //s9.postimg.org/68cudfya7/circuit_test_bb.png
GeertVc
2014-03-21 23:01:56 UTC
view on stackexchange narkive permalink

EV-O'ya:

Devreniz Raspberry Pi'den IO genişleticiye I2c aracılığıyla iletişim kurmaya başlamak için uygun görünüyor, ancak adres pini için neden 3v3 kullandığınızı anlamıyorum ( s) (devre tahtanızda sol MCP23017'nin 15. pimine bakın), cihazın kendisi 5V ile çalışır. Adres pinleri için de 5V kullanmalısınız, onlara bir "1" atamak istemeniz durumunda ...

Şu anda biraz şanslısınız, çünkü "1" için minimum seviye A0 ve A1 adres pinleri 0,25 x Vdd + 0,8 V = 2,05 V'dir (MCP23017 veri sayfasına bakın, bölüm 2.1 DC Özellikleri, Param No. D040).

Atamayı seçtiyseniz Raspberry Pi'nin 3V3 güç kaynağı aracılığıyla A2 pinini adreslemek için bir "1", bu yanlış olurdu, çünkü bu pin için minimum giriş yüksek voltajı 0.8 x 5V = 4V olmak üzere 0.8 x Vdd olmalıdır !!! Aynı bölüme bakın, Param No. D041.

Artık cihazın özelliklerine daha da yakından baktığıma göre, I2c seviyelerinizle de sorun yaşayabileceğinizi düşünüyorum. Yine de parametre no. Veri sayfasının D041'i, SCL ve SDA'nın minimum giriş yüksek voltajı da 0,8 x Vdd olmalıdır. Bu 4V'dir.

Ancak, Raspberry Pi yalnızca maks. I2c pinlerindeki 3V3 oranı çok düşük.

Şu an için yapabileceğiniz en iyi şeyin 3V3 ile MCP'lerinizi de güçlendirmek olduğunu düşünüyorum. Veya Raspberry I2c ile MCP I2c arasına bir I2c seviyesi dönüştürücü koyarsınız ...



Bu Soru-Cevap, otomatik olarak İngilizce dilinden çevrilmiştir.Orijinal içerik, dağıtıldığı cc by-sa 3.0 lisansı için teşekkür ettiğimiz stackexchange'ta mevcuttur.
Loading...