Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

LCD SIKINTISI

Başlatan cızgılıkedı, 17 Ocak 2016, 16:01:00

cızgılıkedı

Kolay gelsin arkadaşlar.Biliyorum bu başlıkta bu formda bir kaç konu açılmış ama çözümlenememiş.
Benim sorunum ISIS programında devrem çalışıyor,hatta lcd.c dosyasını kontrol etmek amacı ile pinlerini değiştirdiğim de ISIS programındaki lcd görüntü gidiyordu.
Devremi denemek amacı ile basit bir program ile ilk önce denemek istedim.
Bu lcd de 1 ve 2 nolu bacaklar katot ve anot.............3 nolu bacak - 4 nolu bacak +
*mclr 10k ile 4 nolu bacağı +5'e bagladım.
*pot 220k bağladım sitelerde 10k denilmiş ben pek bir şey olacağını düşünmüyorum.(ama yinede burda sıkıntı olabilir.)
*1. uc +5v orta uc lcd 5. ucuna 3. bacağınıda - ye bağladım kontras için diğer uclarınıda pic 'in belirtilen uclarına bağladım.
*rw ucunu sitelerde - bağlayın denılmıs pic in bir ucunu - yapın oraya bağlayın denilinmiş.

Resimi bord üzerine kurdum arkadaşlar ISIS deki programı ve programıda yükledim bakarsanız sevinirim .Kolay gelsin .İYİ çalışmalar arkadaşlar..

#include <main.h>
#define use_portb_lcd true
#include <lcd.c>

int i;
void main()
{set_tris_b(0x00);
output_b(0x00);

   while(1)
   {
   lcd_init();
   for(i=0;i<16;i++){
      
    
      lcd_gotoxy(2,2);
      lcd_send_byte(0,0x1E);
      printf(lcd_putc,"  aksamlariii .");
      delay_ms(500);
   }}

}



#include <16F628A.h>

#FUSES NOWDT                    //No Watch Dog Timer
#FUSES NOBROWNOUT               //No brownout reset
#FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#fuses intrc_io
#use delay(internal=4MHz)







cızgılıkedı

arkadaşlar pic'ten hiç bilgi almıyor bana öle geldi sadece lcd arka ışıkları yanıyor.ca1602d lcd nın kodu arkadaslar burda garıp olanda datashhet ıle lcd nın arkasındaki uclar birbiri ile uyuşmaması ilk aldığımda baltığım o olmuştu.ama sıkıntı olmaz dedım normalde diğer lcd lerde 15 anot 16 katot'dur burda başa almışlar .
enable ucu ilk once lojık 1 sonra lojık 0 yapılıyormuş burda duşen kenardan tetıklenıyormus.
ıkıncı olarak rw ucu 1 olursa lcd den bılgı alıyormus
lojık 0 olursa pıc ten bılgı alıyormus. bu devrede lcd den bılgı almıyor yoksa en azından bı degısme olurdu.

esensoy

Lcd 1. ucu genelde VSS dir, yani GND ye vereceksiniz,
Lcd datasheet i var mı? kodu nedir? genelde çok farklılık gösteriyor
En tehlikeli an "zafer" anıdır.

cızgılıkedı

bilgisi olan yokmudur arkadaşlar.

dursuncemal

lcd nin pinlerini nerede tanitigini goremedim. #define use_portb_lcd true tamini 8 bit surme icindi yanilmiyorsam.  flex_lcd.c  kullaniyorum uzun suredir. neten arastirip bulabilirsin. bi dene olmasa lcd.c yı calistiriz.
:=

esensoy

Anlama sıkıntınız mı var? Cevap verdim bilgisi olan yok mu diye soruyorsunuz hala,
LCD nin altında, ya da başka yerinde kodu yok mu? Oradan datasheet ine ulaşın, önce pinlerden emin olun,
Varsa da datasheet var deyin, bağlantım doğru deyin, biz de o ihtimali kafamızdan atıp ona göre yorum yapmaya çalışalım
En tehlikeli an "zafer" anıdır.

esensoy

Alıntı yapılan: esensoy - 18 Ocak 2016, 08:25:30
lcd'nin kodu CA1602D; dataheetle aynı olmadıgını sadece anat katot başa alınmıs datasheetınde ise, en sonda yer alıyor bu sıkıntı değil normal ve duzgun bır sekılde bağladım .
katot-anot-ground-vcc-vee-rs-rw-e-0-1-2-3-4-5-6-7
pin ucları bu şekilde arkadaşlar..lcd.c dosyasından şüpheleniyorum ama ISIS'te pinleri değiştirdiğim zaman çalışmıyor demekki pinler doğru..
Yukarıdakini bana maille göndermişsiniz, forumda 1 kişinin sorununu çözmektense herkese faydalı olabilecek şekilde çözüm getirmeye çalışıyoruz,
Yani sizin yaşadığınız sorunu bir başkası da yaşayabilir, nasıl çözüldüğünü onun da görmesi gerekir,
Dolayısıyla konu ile alakalı şeyleri özelden yazmak yerine buradan yazınız,

Soruna dönersek;
http://www.mmtelec.com/download/CA1602D-Datasheet-16x2-Character-LCD-module.pdf burada sizin lcdnin datasheet i var,
bağlantılarınız yanlış gibi görülüyor,
En tehlikeli an "zafer" anıdır.

Eski Klasör

int i; den önceki kısmı silip bunları yapıştırıp denermisin?

#include <main.h>
#include <lcd.c>

#define LCD_ENABLE_PIN PIN_B0
#define LCD_RS_PIN PIN_B1
#define LCD_RW_PIN PIN_B2
#define LCD_DATA4 PIN_B4
#define LCD_DATA5 PIN_B5
#define LCD_DATA6 PIN_B6
#define LCD_DATA7 PIN_B7