Arkadaşlar, PIC16F877A ile PORTB'ye bir LCDpanel ve PORTC'ye bir LCD panel olarak iki LCD paneli kontrol etmem münkün mü? PICBasicPro komutlarına göre bir LCD için DEFINE komutları başta tanımladıktan sonra sanki ikinci LCD için tanımlanamıyor gibi gözüküyor. ASlında her iki LCD panelde de aynı veriler gözükecek. Fakat aynı hat üzerinden bağlantıda voltaj yeterli olmayabilir diye ayrı porta ayrı LCD programlyaım dedim. Bilen arkadaşların yardımını istiyorum teşekkürler.
picBasic yetenekleri sınırlı olabilir.
İki, üç, ... on beş lcd bile bağlanır. Bu kadar çok lcd bağlanınca bacak sayısı yeterli gelir mi sorusu aklına geliyor olabilir, portları buffer kullanarak çoklayabilirsin.
İki LCD aynı verileri gösterecekse 74HC244 gibi bir buffer entegresi ile sinyallerin karışmadan iletilmesini sağlayabilirsin.
Hatta 74HC595 ile sadece 3 pin ile LCD sürülmüş örnek var. link
Teşekkür ederim. Bacak sayısı 16f877 için yeterli oluyor. Ama PIC BASIC tek LCDyi yönlendiriyor komutlarıyla. Paralel olarak iki LCD yi bağlanıp bir tasarım yaptım ISIS'te oluyor gibi. Pratikte durumun ne olacağına bakacağım artık sonra.
Buffer'a gerek yok. Kaç tane LCD bağlamak istiyorsan hepsinin data pinlerini, okuma-yazma (RW) pinlerini ve RS pinlerini paralel bağla. Enable bacaklarını ayrı ayrı pic'e gir. Enable bacaklarını kontrol ederek her LCD'yi aynı anda birbirinden bağımsız bir şekilde kontrol edebilirsin.
mux kullanarak yapabilirsiniz hocam sırayla çıkış verirsiniz. veya lcd kütüphane dosyaları üzerinde değişiklik yapıp pinlerini değiştirirseniz olur ama fonksiyonlarını da değiltirmeniz lazım mesela printf1 ve printf2 gibi kaç tane lcd kullanacaksanız gibi.
Şema:
Hangi dili kullanıyorsun bilmiyorum. Ben Pic Basic'de yazdım. Ama bakarak mantığı anlayabilirsin sanırım.
Ellerinize sağlık. Tarama yöntemini kullanmışsınız sanırım. gayet işlevsel ve güzel olmuş.
Teşekkür ederim. Mantıken tarama yöntemi. Aslında Enable bacakları dirençler üzerinden paralel bağlı. Hangi lcd'ye veri yazılacaksa o lcd dışındaki lcd'lerin tüm Enable pinleri şaseye çekiliyor.