16f876A-LCD GÖRÜNTÜ SORUNU

Başlatan İskasa, 17 Ocak 2012, 01:59:38

İskasa

16F876A PİC TEN GÖRÜNTÜ ALAMIYORUM TEMEL SORUNLAR NE OLABİLİR ayrıca .picin  8 ve 19 nolu bacaklar vss olarak gözükuyor ıkısınıde toprağa gönderdim bı sıkıntı olur mu .Ayrıca pic e programı atarken xt osilatörü olarak sectim.Bağlantılarda sorun yok lcd de calısıyor başka bir program uzerınden görüntü alıyorum .Program aşağıdaki linkte bilmem gereken extra birşey varsa ilgilenen arkadaşların cevapları bana yol gösterecektir iyi günler.

http://www.4shared.com/rar/gi1Ho24t/PIC_LE_MULTPLEXER_LCD_CCSC_PRO.html

Kabil ATICI

16A876'nin Vss bacaklarını birlikte (GND) olarak bağlayabilirsin.  Vcc ile yanındaki Vss bacağı arasına entegreye yakın noktada 100nF kondansatör bağla.

LCD'de görüntü alıyorum dediğin isis gibi simülasyon da mı? Yoksa  fiziksel devrende mi? Fiziksel devrende ise LCD'deki  resmini koyabilir misin?

Şema üzerinden gidersek;
10K bir trimpot orta bacağı VEE olmak üzere, diğer bacakları vdd ve Vss uçlarına bağla. D0..D3 bacaklarını GND'ye (Vss) bağla.

İşlemci devresini test için bir bacağa direnç ile LED bağla ve basit bir yanıp sönen LED devresi oluştur. Çalışırsa diğer programa geçersin.

MCLR bacağını 10k gibi bir dirençle Vcc'ye (veya Vdd) ile bağla.
ambar7

İskasa

isis te görüntü alıyorum fiziksel devrede sadece karelı 2x16=32 parça olması gerekırken sadece 16 karelı görüntü çıkıyor picin gönderdiği bilgileri zaten hiç göstermiyor .

İskasa

10 k trimpot demişsiniz16f876a da 2 vss bir vcc var vee bacağı yok.Vee bacağı derken 8 nolu bacaktaki vss den mı bahsediyorsunuz.

K46

#4
5k - 25k arası bir trimpotu şekildeki gibi bağlayın.

Bak, ibret al, yere düşen yaprağa, O da eskiden, yukarıdan bakardı toprağa!

İskasa

EYW USTA BUNU DAHA ÖNCE DENEDIM PİC İN BİR BACAĞINA DİRENÇ İLE LED BAĞLADIM YALNIZ LED YANMIYOR PİC ENERJILENMIYOR GIBI BIRSEY PROGRAM YUKARIDA LINKTE VAR PROTEUSTA ÇALIŞIYOR SORUN PIC IN BILGI GONDERMEMESİ YENI ALDIM PIC I BOZUK OLABILIR MI ACABA...

Kabil ATICI

Ekranda kareli görüntü ya kontrastın çok açıldığını yada LCD ekranın sürülemediğin gösteriyor.

10K tirmpot ve VEE bacağı LCD ekran içindir.  LCD'nin VEE bacağı kontrast bacağıdır. Elektronikte her ne kadar pull-up veya pull-down yapıları olsada giriş bacakları boşta kalmayı sevmez.

PIC için bir yanıp sönen led devresi dene. İşlemci devresinin çalıştığından böylece emin olursun, sonra diğer adımlara geçersin.
ambar7

İskasa

DENEDIM ONU SONUC YOK PİCTE SORUN VAR PROGRAM ÇALIŞIYOR PROTEUSTA. F876A NIN BAĞLANTILARINDA BESLEMELERINDE SORUN OLABİLİR YADA PİC BOZUK YENİ ALDIM AMA BİLMİYORUM SORUNUN NE OLDUGUNU  :)

Kabil ATICI

Pic için Config sigorta ayarları ile ilgili bir şey olabilir. (buda benim bildiğim bir konu değil)

bilemiyorum ama  16f876A veya 16f876 arasında bile fark olduğu belirtiliyor.. Ve sigorta ayarlarında veya config bitlerinde farklılık gösterebiliyor. Sorun işlemcide değilde ayarlarda veya programlama esnasında atlanan bir noktadan kaynaklanabiliyor.

simülasyonda çalışması illede devrede çalışacağı anlamını taşımıyor. Çoğu durumda simülayon programı  sizin yapmanız gereken bir çok şeyi yapılmış varsayıyor.

Mesela kristal, kondansatörler, besleme hatta iyi lehimlenmemiş bir eleman bile devrenin çalışmasını bozabiliyor.
ambar7

İskasa

BENDE O NOKTAYA TAKILDIM ZATEN USTA NOKTA ATIŞI YAPIYORSUN EYW HERŞEY İÇİN ELIMDEKI PIC 16F876A BIRAZ DAHA BAKAYIM BEN DEVRE COK KARISIK DEĞİL HATA YAPMA İHTİMALIM COK AZ ZATEN 10 TANE KABLO KISA DEVRE ORANI DA AZ SİZİN DEDİĞİNİZ GİBİ OLAY ORDA BİTİYOR  HERŞEY İÇİN TEŞEKKÜRLER.

İskasa

http://imageshack.us/content_round.php?page=done&l=img171/8071/dsdsfadfasa.png&via=mupload&newlp=1

http://imageshack.us/content_round.php?page=done&l=img593/829/ssdasdasd.png&via=mupload&email=kadiralickku@hotmail.com&newlp=1

yukarıdaki resimlerde gözüktüğü gibi yükledim.Aşağıda da pogramın içindeki sigorta bilgileri var; HERHANGİ BİR SORUN VAR MI...

"#fuses xt,noPROTECT,noWDT,PUT,BROWNOUT,nolvp,nowrt"

My75

#11
#DEFINE LCD_RS      PIN_b6
#DEFINE LCD_EN      PIN_b5
#DEFINE LCD_D4      PIN_b4
#DEFINE LCD_D5      PIN_b3
#DEFINE LCD_D6      PIN_b2
#DEFINE LCD_D7      PIN_b1

Programda böyle yapmışsın,lcd data bitleri ilk veya son 4 bitten başlar..Yani doğrusu

#DEFINE LCD_RS      PIN_b6
#DEFINE LCD_EN      PIN_b5
#DEFINE LCD_D4      PIN_b0
#DEFINE LCD_D5      PIN_b1
#DEFINE LCD_D6      PIN_b2
#DEFINE LCD_D7      PIN_b3

yada

#DEFINE LCD_RS      PIN_bx
#DEFINE LCD_EN      PIN_bx
#DEFINE LCD_D4      PIN_b4
#DEFINE LCD_D5      PIN_b5
#DEFINE LCD_D6      PIN_b6
#DEFINE LCD_D7      PIN_b7

şeklinde olmalı..Senin yaptığın Proteusda nasıl çalışmışki??
Tomurcuk için çaba göstermeyen dal,odun kalmaya mahkumdur...

İskasa

isis te sorun yok şimdi senin dediğin gibi yaptım devreden yıne sonuc alamadım sıgortalarla ılgılı bır problem var pic e bağladıgım led den herhangi bır sonuc alamıyorum .

Kabil ATICI

#13
yanlış bilmiyorsam 4 bitlik işlemleri bit bazında gerçekleştiriyordu.
şunun gibi
void LCD_SetData ( unsigned int cX )
    {
    output_bit ( LCD_D4, cX & 0x01 );
    output_bit ( LCD_D5, cX & 0x02 );
    output_bit ( LCD_D6, cX & 0x04 );
    output_bit ( LCD_D7, cX & 0x08 );
    }

bu bağlantısını verdiği dosyaların içinde

düzeltme:bilmiyorsan->bilmiyorsam ( özür dilerim)
ambar7

İskasa

program 16f876 göre yazılmış ben 16f87a.h yaptım error verdi watch dog tımer ın off yaptım o sorun duzeldı pic e yükledim dediklerinizi tekrar yaptım bunun uzerınde lcd den göruntu almayı gectım o sonrakı ış pic e bacağına bağladıgım led yanmıyor  buu vcc-vss arasına 1uF BAĞLIYORUM ORADA BIR SORUN OLABILIR MI ACABA ELIMDE 100nF yok suan.