Haberler:

Foruma Resim Yükleme ve Boyut Sınırlaması ( ! )  https://bit.ly/2GMFb8H

Ana Menü

türkce karekter

Başlatan kemalsa, 17 Kasım 2004, 20:52:43

kemalsa

yav beyler bu elc lere türkce katekter yolamanın bi yolu varmıı ....
:twisted:

DumrulBey

Merhaba,

LCD demek istedin sanırım? Aslında karakter belleğinin desteklediği her karakteri ekrana basarsın. Bu da kısıtlı Türkçe desteği demek. Bildiğim kadarıyla her Türkçe harf yok. Bunun için karakter kodu göndereceksin veya grafik LCD kullanacaksın.

Başarılar...
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)

ete

Normal LCD lerde 8 adet karekteri kendimiz yaratabiliriz. Yaratılması kolay ve yine kullanılmasıda kolaydır. Aşağıda basit bir örnek vererek açıklayacağım. Tabiiki açıklama Pic Basic Pro bazında olacak. Diğer programlama dillerine isteyen çevirebilir.
- Öncelikle kullanacağımız karekteri oluşturmamız gerekecektir. Bunun için ben Isis de Karekter Generatörünü kullanıyorum. Aşağıda Türkçe karekterler için oluşturduğum datalar var.
     LCDOUT $FE,$40,$6,$9,$9,$6,$0,$0,$0,$0        'derece işareti
      LCDOUT $FE,$48,$0E,$0F,$10,$17,$11,$11,$0E,$0 'Ğ dataları
      LCDOUT $FE,$50,$11,$0,$11,$11,$11,$11,$e,$0   'Ü dataları
      LCDOUT $FE,$58,$0E,$10,$10,$0E,$01,$05,$1E,$04 'Ş dataları
      LCDOUT $FE,$60,$04,$0E,$04,$04,$04,$04,$0e,$00 'İ dataları
      LCDOUT $FE,$68,$0A,$0E,$11,$11,$11,$11,$0E,$0  'Ö dataları
      LCDOUT $FE,$70,$0E,$11,$10,$10,$10,$15,$0E,$4  'Ç dataları
      LCDOUT $FE,$78,$0,$0,$0C,$4,$4,$4,$e,$0             'ı dataları

Genelde 5 bitlik 8 adet bilgi kullanılıyor. Başta yer alan $FE,$40 dan sonra gelenler karekter datalarıdır. Yani sondan itibaren 8 adet data. Bunları karekter generatöründe sırası ile yerleştirirseniz oluşan harf datalarını görebilirsiniz.
- Karekter başında yer alan $FE komut verileceği anlamına geliyor. $40 - $78 ise karekterlerin yerleştirildiği adres başlarını göstermektedir.
En üst sırada yer alan derece işareti sıcaklık göstergelerinde C üzerinde yer alan derece işaretidir. İlk adrese yerleşen karekter numarası 0(sıfır) sonuncu adrese yerleşen ise 7 dir.
- Gelelim kullanıma, Harfi yazdıracağınız yerde ;
 LCDOUT $FE,0 yazılırsa derece işareti ekrana gelir. Veya
 LCDOUT "ISI : ",DEC2 ISI,0,"C" yazılır ise ekrana 24 oC gibi bir şekil gelir (ISI değişkeninde 24 olduğu varsayılmıştır).
Türkçe karekterler için;
Örneğin; AKŞAM yazmak istersek;
LCDOUT "AK",3,"AM"  şeklinde yazmamız gerekecektir.
Sanırım buraya kadar her şey anlaşılmıştır.
Son olarak karekter datalarının programın en başında verilmesi gerekiyor.

Kolay Gelsin
ETE
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

fsan

ellerine saglik ETE, ustam cok güzel anlatmissin sağol.

GSMdesigner

Merhaba,

Özel karakter tanımlayabildiğimizi öğrendiğim çok iyi oldu. Madem bunlar 8 karakter ile sınırlı o zaman sadece "Ğ","Ş" ve "İ" harfini tanımlamak yeterli diye düşünüyorum. Çünkü diğerleri genelde ROM'lar içinde var. Bir de bunların küçük harflerini hesaba katarsak 6 eder ki derece veya ohm işareti gibi karakterleride tanımlayabiliriz. Öyle değil mi?

Peki bu karakterleri LCD'ye gerilim verdiğimizde her seferinde tanımlamak gerekiyor mu? Yoksa içinde Flash veya EEPROM gibi bir belleği olabilir mi? Ayrıca 8 sınırı her LCD'de var mı? Bu değerin 16 veya 32 olma ihtimali var mı?

Sevgiler, saygılar...
 [email]salihdb@akeltelekom.com[/email]

ete

@Gsmdesigner,

Bildiğim kadarı ile tüm LCD lerde toplam 8 karekter tanımlanabiliyor. Daha fazlası mümkün değil. Tanımlanan karekterler LCD nin hafızasına yazılıyor ve bu hafıza Flash değil. Dolayısıyla voltajı kestiğiniz anda siliniyor. Ancak sizin ekranda bir şey görebilmeniz için zaten voltaj gerekli ve voltaj olduğu müddetçe karekterler yerinde kalıyor. Program ilk çalıştığında bir kere bunları ilgili yerlerine yerleştirdikten sonra sürekli kullanıyorsunuz.

ETE
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

kemalsa

herş için çok solunnn  :D

t2

#7
Aslında LCDde kullanacağımız özel karakterler 8 tane ile sınırlı değil. Sadece aynı anda kullanılabilecek özel karakter sayısı 8 adet.

Diyelim Türkçe mesaj göndereceğiz ozaman  Gosub TRK  deriz. daha sonra Print ..x  dediğimiz zaman türkçe karakterimiz çıkar.

Başka bir durumda ekranda  ê işareti gerekiyor diyelim. bu durumda Gosub simge deriz. Bu sefer yine  Print ..x dememize rağmen başka karakter yazılır.

Hafıza yetiyorsa  simgeTRK  ... gibi  10 tane alt program tanımlayabiliriz.  Aynı anda gösterilmesi gereken karakterler aynı alt programda tanımlanır. 10 tane olsa  10x8 = 80 özel karakterimiz olabilir.

TRK:
LCDOUT $FE,$48,$0E,$0F,$10,$17,$11,$11,$0E,$0 'Ğ dataları      
LCDOUT $FE,$50,$11,$0,$11,$11,$11,$11,$e,$0   'Ü dataları      
Return


Simge:
LCDOUT $FE,$48,$0E,$0F,...    '... dataları      
LCDOUT $FE,$50,$11,$0,$...         '... dataları      
Return



Alıntı yapılan: picproje.org ve bazı otomatik üyelerKonunun tarihine bakın!,  bu konuya en az .. gündür yanıt gönderilmemiş.
Yanıt vermek yerine yeni bir konu açmanız önerilir.
Niye ki?  geçen bu süre içerisinde piyasadaki 2x16 LCDler farklı mı davranmaya başladı, Artık LCD kullanacak kişiler bu başlığı görmeyecek mi? cık cık cık..