ARKADAŞIM SEN YİNEDE EKRANA BİRŞEYLER YAZDIRMIŞSIN.BEN ONUDA BECEREMEDİM.BENDE LCD Yİ YENİ ÖĞRENİYORUM.LCD KONUSUNDA İYİ OLAN ARKADAŞLARIN YARDIMLARINI BEKLİYORUM. |
lcd.c lcd.h delay.c delay.h bu dosyaları include klasörünün içine kopyaladın mı? bir de lcd_init() ten sonra DelayMs(100) koyarsan iyi olur. ayrıca programın bu halinde stdio.h dosyasına ihtiyaç yok ama "Temp= " yazısının yanına sıcaklık değerini ekleyeceğin zaman ihtiyacın olacak. |
birşey daha var. 3 numaralı VEE bacağına 10k'lık POT bağladın mı? ya sen devreyi gerçekten yapıyor musun yoksa Proteus ile simülasyon mu yapıyosun? |
CCS nin derleyicisini kullnasan yardım edebilirdsim ama HiTech konusunda bişey diyemiyecem ama unsigned char display[]="Temp= "; bu tanımlamada bir hata yok değilmi yani hatasız derleniyormu program unsigned char display[7]="Temp= "; şeklinde dizi boyutunu tanımlamak gerekir gibime geliyor. Yoksa compiler kendisi otomatikmi ayarlıyor |
o tanımlamada hata yok. orası doğru :D |
Pot da koymuştum.Simulasyon değil.devreyi protoboardda denedım olmadı. |
O dosyalar zaten include içinde olmasa zaten derleyici bulamadım diye hata veriyor... |
Bir de netten şunu öğrendim.Galiba bu LCDnin üst satırının komple yanması test ekranıymış.lcd_init()ten sonra delay koyacagım deneyeceğim... |
yani derleyici hata vermiyor. normal derleniyor ama devre çalımıyor öyle mi. o zaman yukarda dediğim gibi lcd_init() den sonra dleay koy 100ms. öyle bir dene bakalım olacak mı... |
İnternette aynı tür sorunu olan bayagı bir kişi var.Onlar da sorunlarına yanıt alamamışlar.Üst satır komple blok halinde çalışıyor.Alt satır boş.Galiba bu tipik bir lcd test ekranıymış.Galiba lcd_init() oluyo ama lcd_clear() çalışmıyor.Arada 100 ms delay koydum yine olmadı.Ne yapmak lazım lcd.c deki delayleri mi değiştirecez?Bunu da denedim bazılarını arttırdım biraz yine bişey değişmedi. |
"Üst satır komple blok halinde çalışıyor" ne demek tam anlayamadım. üst satırda ne gözüküyor? |
http://www.thecodeproject.com/csharp/cspplcds.asp?print=true Part-3 Before Coding'ten önce bir lcd görüntüsü var.Ona bakarsan üst satır benim anlatmak istediğimle aynı:) |
lcd.c dosyasında var zaten cleardan sonra 2ms delay ayrıca kullanmaya gerek var mıdır? |
Birde şöyle bir deneme yaptınmı borda kurulan devrelerde bazen temas sorunu yüzünden işlemci hiç çalışmıyor. Ve hatayı yazılımda arıyoruz genelde. PIC e lcd programını değilde basit bir ledi yakıp söndüren bir program yazıp borda kurduğun donanımın sağlıklı çalıştığını test etmeni tavsiye ederim. |
arkadaşım sana PICBasic kullanmanı öneririm device 16f877 declare xtal 4 cursor 1,1 print "Deger:" cursor 2,1 print "değer:" |
trigger senin karşılaştığın sorunun aynısıyla ben de karşılaştım maalesef. devreyi kurdum ve üst satır verdiğin linkteki gibi koyu gözüküyor. neden böyle birşey oluyor acaba? acaba sorun breadboard kullanmamız olabilir mi??? |
pic 16F84A + 2x16 LCD(HD44780) kullanıyorum.
HI-TECH'in kendi delay,lcd,pic vs include dosyalarını kullanıyorum.
PIC--LCD
RB0--11(D4)
RB1--12(D5)
RB2--13(D6)
RB3--14(D7)
RA2--4(RS)
RA3--6(E)
LCD : 1(Vss)--GND
5(R/W)--GND
Beslemeler vs tamam.
Aşagıdaki kodu yuklesem de ekranda sadece ust satır komple yanıyor.
Sonra başka bişey yazmıyor.Bir arkadaşım reset olmuyor diyor.Sorun nerede?HI-TECH'ın lcd.c dosyası ya da DelayUs ve DelayMs fonksiyonları mı düzgün çalışmıyor?
Şimdilik sadece ekrana Temp= yazdırmak istiyorum bunu bile yapmıyor.Daha ileride sıcaklık ölçüp yazdıracam:)