lcd de değişkene göre yazı yazdırma

Başlatan tuncay37, 12 Şubat 2012, 22:48:35

tuncay37

x isimli değiken var. diyelim ki 0 ile 9 arası değer alıyor. bu değerlere göre lcd de ekrana kelime yazdırmak istiyorum.
örneğin x=2 olduğunda ALİ, x=4 olduğunda MEHMET yazsın.

LCDOUT $FE,$C0, x
şeklinde olmadı. ne yapmam lazım. saygılar

Mucit23

Alıntı yapılan: tuncay37 - 12 Şubat 2012, 22:48:35
x isimli değiken var. diyelim ki 0 ile 9 arası değer alıyor. bu değerlere göre lcd de ekrana kelime yazdırmak istiyorum.
örneğin x=2 olduğunda ALİ, x=4 olduğunda MEHMET yazsın.

LCDOUT $FE,$C0, x
şeklinde olmadı. ne yapmam lazım. saygılar

Sen bu şekilde x değerini LCD ye direk yazarsan lcd ekranda X değerinin ascii karşılığını görürsün.
Bunu yapabilmen için  select case ile bir isim tablosu oluşturmalısın.

Mesela;
Select Case X
case 0
LCDOUT $FE,$C0, "Ali"
case 1
LCDOUT $FE,$C0, "Mehmet"
case 2
LCDOUT $FE,$C0, "Ayse"
.
.
.
.
End Select

Bu şekilde X değişkeninin değerine göre farklı isimler yazarsın lcd ye
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

tuncay37

Bu şekilde yazdırdım. ama sanki değişkenin başına özel bir işaret geliyordu gibime geliyor. bir yerde gördüm sanırım ama hatırlayamadım.

ete

#3
Önce işin aslını öğrenmen gerekiyor. Ekrana neler yazdırılabilir? şöyle bir düşün bakalım.
Yalnızca 3 şey yazdırılabiliyor.
1. Sayılar : bunlar iki türlü yazdırılır. Bir sayı karekterini yazdırma birde değişkene bağlı sayı değerini yazdırmak.
Birincisine örnek,  LCDOUT $fe,$80,49 şeklinde bir şeyi yazdırırsan ekrana "1" rakamı yazdırılır. çünki 1 rakamonın ASCII (karekter kodu) 49 dur. Bunu şöyle de yazdırabilirsin. X=49 ise  LCDOUT $FE,$80,X  şeklinde yazdırırsan X=49 olduğu için ekrana X in değeri yani 1 rakamı yazdırılacaktır.

İkinci alternatifte sayı değerlerinin ekrana yazdırılmasıdır. Bu işte sayı hangi tabana göre yazdırılacak ise ona uygun işaret değişken başına koyulmalıdır. Örneğin X=desimal 34 (X=34)  ise ve ben bunu desimal olarak gösterecek isem;
LCDOUT $fe,$80,dec X  şeklinde yazdırılır. Veya hane formatıda ilave edilerek LCDOUT $fe,$80,dec3 X  şeklinde 3 hane şeklinde yazdırılır. Olmayan haneler sıfır olarak yazdırılır hane sayısı fazla ise yalnızca ilk 3 hanesi yazdırılır.
Bunu yazdırmanın bir diğer yoluda başına # işaretini koymaktır. Buda desimal formatta yazdırma yapar. DEC ile aynı sonucu verir.
Sayı HEX formatında yazdırılacak ise başına HEX binary yazdırılacak ise başına BIN işareti koyulur.

2. Yazdırılacak unsur karekterlerdir. Ekrana alfabe ve ilave olarak yazılarda kullanılan işaretleri yazdıracak isen onların ASCII kodunu direk yazma komutunu peşine ya sayı olarak yada bir değişkene yerleştirerek verirsin.
X=65 ise ve ben LCDOUT $fe,$80,X şeklinde bir format kulanırsam ekrana A karekteri yazılacaktır. Aynı karekteri direk karekteri kullanarak yazdırmak için o karekteri çift tırnak içinde vermelisin.
LCDOUT $fe,$80,"A" şeklinde tabiiki A karekterinin yanına başka karekterlerde eklersen onlarda ekranda yerlerini alacaktır.

3. Kendi oluşturduğun karekterleri yazdırmak için önce 5*8 lik nokta matris formatında karekterini oluşturup sonra bunu kullanıcı için belirlenmiş 8 adet adresten birisine bu karekteri yarleştirip onu ekrana yazdırabilirsin. Örneğin küçük derece işareti yapalım.
LCDOUT $FE, $40, $07, $05, $07, $00, $00, $00, $00, $00   bu 8 adet byte ilk karekter hafızası olan $40 adresine yerleştirilir. Varsa ikincisi bir sonraki boş adres olan $48 adresine v ebir sonraki var ise $50 adresine yerleşerek toplam 8 farklı karekter oluşturabilirsin.
Bu işlemden sonra, ilk karekteri yazdırmak için LCDOUT $FE,$80,0  (Burada sıfır rakamı ilk karekteri işaret eder, 1 verilirse ikinci , 2 verilirse üçüncü karekter ekrana gelir).komutunu kullanman yeterlidir.

Hepsi bu kadar

Ete

KAZIMUGUR

Zavallı karakter lcd yi ne hale getirmişler , kendini glcd sanmış gariban.
Dil farklı ama olsun neler yapılabileceği hakkında az çok fikir veriyor.

http://www.micro-examples.com/public/microex-navig/doc/078-lcdscope

Powered by EzPortal