ben 2 tane pic16f877 arasında seri haberleşme yapmak istiyorum.birinci pic den yoladığım veriyi 2. pic üzerinden lcd ye atmak istiyorum...proteus ta bu kodlarla çalıştığı halde uygulama yaparken çalışmadı..ben ekranda tt değişkenine bağlı veriyi göstermek istiyorum ama hep 0 gözüküyor ve kısa bir müddet sonra 0 bile kayboluyo..lcd bomboş kalıyor.. hata nerde sizce ..yardım ederseniz sevinirim... serin serout komutlarını da denedim onlarda da aynı sonuç çıkıyor..ne yapabilirimm?? -------- ALICI KISMIN PİC BASİC YAZILIMI
basic ile aram iyi değildir baştan onu söyleyeyim!
LCD yi çıkarıp PIC çıkşlarına LED bağlayın bu durumdada çalışmıyor ise şunları gözden geçirin - PIC ler aynı osilatör konfigürasyonlarıyla mı çalışıyor? - PIC programı yüklenirken WDT durumu nedir - PIClerin reset girişi H durumunda mı - Devre board üzerine kurulu ise temassızlık problemi varmı - Alıcı PICin en azından seri portu pinleri dirençler ile toprağa çekildimi --------------------------------------------------------------------------------------------- bunlardan sonra problem hala çözülmedi ise baud rateyi azaltarak tekrar deneyin...
bu problem çözüldü...cevap veren herkese teşekkürler..
çözüm : picler arası seri haberleşme yapılacaksa , toprak mutlaka ortak olmalıdır...proteus ta çalışıp , boardda çalışmamasının nedeni budur...ben ayrı boardlar kullanmıştım..toprakları birleştirince sorn çözüldü...
hata nerde sizce ..yardım ederseniz sevinirim...
serin serout komutlarını da denedim onlarda da aynı sonuç çıkıyor..ne yapabilirimm??
--------
ALICI KISMIN PİC BASİC YAZILIMI
Define LCD_DREG PORTd
Define LCD_DBIT 4
Define LCD_RSREG PORTb
Define LCD_RSBIT 0
Define LCD_EREG PORTb
Define LCD_EBIT 1
define hser_rcsta 90h
define hser_txsta 20h
define hser_baud 2400
define hser_spbrg 25
DEFINE HSER_ODD 1
DEFINE HSER_EVEN 1
include "modedefs.bas"
xx var byte
basla:
hserin [xx]
lcdout #xx
pause 500
lcdout $fe,1
goto basla
--------------------
VERİCİ KISMIN PİC BASİC YAZILIMI
define hser_rcsta 90h
define hser_txsta 20h
define hser_baud 2400
define hser_spbrg 25
DEFINE HSER_ODD 1
DEFINE HSER_EVEN 1
include "modedefs.bas"
tt var byte
tt=16
loop:
hserout[tt]
Pause 500
Goto loop
-----------------
< Resime gitmek için tıklayın >
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.