avatar_elektro77

4x16 lcd sorunu

Başlatan elektro77, 03 Aralık 2018, 10:13:47

elektro77

bu ayarlarla 4x16  lcd 3. ve 4. satırı 5.karekterden itibaren yazmaya başlıyor. fakat 4x20 lcd denememde sorun yok.sebebi nedir acaba.

DEFINE LCD_DREG        PORTC    'LCD data bacakları hangi porta bağlı?
DEFINE LCD_DBIT        4              'LCD data bacakları hangi bitten başlıyor?
DEFINE LCD_EREG        PORTC    'LCD Enable Bacağı Hangi Porta bağlı?
DEFINE LCD_EBIT        3              'LCD Enable Bacağı Hangi bite bağlı ?
DEFINE LCD_RSREG       PORTC    'LCD RS Bacağı Hangi Porta bağlı ?
DEFINE LCD_RSBIT       2              'LCD RS bacağı Hangi Bite bağlı  ?
DEFINE LCD_BITS        4               'LCD 4 bit mi yoksa 8 bit olarak bağlı?
DEFINE LCD_LINES       4              'LCD Kaç sıra yazabiliyor
DEFINE LCD_COMMANDUS 2000   'Command delay time in us
DEFINE LCD_DATAUS 50               'Data delay time in us


ADCIN 0,HAM1               
Ham1=ham1+1
RV=(ham1*/125)
IF RV>190 THEN RLED=1
LCDOUT $FE,$C0,"R= ",# RV,"V"
PAUSE 50     
'********************************ADC 2*****************************************       
ADCIN 1,HAM2
Ham2=ham2+1
SV=(ham2*/125)
IF SV>190 THEN SLED=1
lcdout $FE,$94,"S= ",# SV,"V"
PAUSE 50   
'*******************************ADC 3*****************************************
ADCIN 2,HAM3       
Ham3=ham3+1
TV=(ham3*/125)
IF TV>190 THEN TLED=1
LCDOUT $FE,$D4,"T= ",# TV,"V"
PAUSE 50

"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

ete

2x16 2 satır ve satır başına 16 karekter demek. 4x20 ise 4 satır ve satır başına 20 karekter demektir.
2 satır LCD de satır başları $80 1. satır ve $C0 ikinci satırdır. Hangi LCD nin kullanılacağı LCD define tanımlamalarında da belirtiliyor.
DEFINE LCD_LINES       4              'LCD Kaç sıra yazabiliyor  bu satır o işe yarıyor. Buraya 4 verip 2 satır kullanmak yada buraya 2 yazıp 4 satır kullanmak kurala aykırı hareket etmek demektir.

Bu düzeltmeleri yap ve yinede sorun oluyor ise LCD yazdırma komutlarına bak sorun oralardadır.

Ete

elektro77

'birinci satır, $80-$81-$82-$83-$84-$85-$86-$87-$88-$89-$8A-$8B-$8C-$8D-$8E-$8F-$90-$91-$92-$93
'ikinci satır,  $C0-$C1-$C2-$C3-$C4-$C5-$C6-$C7-$C8-$C9-$CA-$CB-$CC-$CD-$CE-$CF-$D0-$D1-$D2-$D3   
'Üçüncü satır,  $94-$95-$96-$97-$98-$99-$9A-$9B-$9C-$9D-$9E-$9F-$A0-$A1-$A2-$A3-$A4-$A5-$A6-$A7
'Dördüncü satır,$D4-$D5-$D6-$D7-$D8-$D9-$DA-$DB-$DC-$DD-$DE-$DF-$E0-$E1-$E2-$E3-$E4-$E5-$E6-$E7

ben satır başlarını daha önce sizden aldığım bu bilgiye göre düzenlemiştim.
yukarıdaki bilgiye göre 1 ve 2. satır başları tutuyor fakat
3.satır başı $90
4.satır başı ise $D0 ile başladığında sorun kalmıyor.

Fakat 4x20 karekterde yukarıdaki bilgiler doğru.
nedir bunun açıklaması.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

ete

Orada resmini verdiğin LCD 4x16 LCD halbuki kullandığın kodlar 4x20 lcd için yazılmış fark buradan geliyor.
4x20 LCD nin simulasyondaki kodu LM044 dür. 4x16 nın ise LM041 dir. Kodlarına bak anlarsın. Zaten resimden gördüğüm kadarı ile o LCD 4x16 lık. Sorun bu.

Ete

elektro77

4X16 İçin satır ve karekter sıralamasını yazabilirmisiniz hocam. Lütfen
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

elektro77

4.Satır başım sürekli titriyor.
$D0 değilmi orası.
"Eğer bir konuyu öğrenmek istiyorsan o konunun öğretmeni ol; daha iyi öğrenmek istiyorsan o konuda bir kitap yaz; daha da iyi öğrenmek istiyorsan yazdığın kitabi oku"

ete

Aslında kendin bulmuşsun değerleri ama yinede vereyim.
1. satır $80-$81-$82-$83-$84-$85-$86-$87-$88-$89-$8A-$8B-$8C-$8D-$8E-$8F
2. satır $C0-$C1-$C2-$C3-$C4-$C5-$C6-$C7-$C8-$C9-$CA-$CB-$CC-$CD-$CE-$CF
3. satır $90-$91-$92-$93-$94-$95-$96-$97-$98-$99-$9A-$9B-$9C-$9D-$9E-9F
4. satır $D0-$D1-$D2-$D3-$D4-$D5-$D6-$D7-$D8-$D9-$DA-$DB-$DC-$DD-$DE-$DF

ETE

ete

#7
4. satır başı elbette $D0 ancak diğer satırlardan taşma olursa bir sonraki satıra atlar yazı ve yazıp anında yenisi yazıldığı için silinmiş gibi gözükür
Her satıra yazdırılan karekter sayısının 16 karekteri geçmediğinden emin olmak gerekir. Mesela 2. satırdan taşma olursa 4. satıra yazılır.


Ete

Powered by EzPortal