GLCD VE FONT OLUŞTURMA

Başlatan oyhan, 21 Mart 2005, 13:01:20

oyhan

Merhaba Glcd ler ile kullanmak üzere font oluşturmanın en kolay yolu nedir. Fonconvertor diye bir program kullandım ama açıkçası sonuç alamadım. Yazılan program içerisinde aynı anda kaç tip font kullanılabilir.
Düz metin yazıları kullanılırken 128x64 vb.. glcdlerde neere dikkat etmeli bu konuda ayrıntılı bir kaynak varmı?
İyi Çalışmalar...
BİRLİKTEN KUVVET DOĞAR:

ete

Arkadaşlar,

Font oluşturmanın bir tek yolu var oda 5x7 veya 5x8 matrix kullanmak. Bu matrix in nasıl kullanılacağı ve font datalarının nasıl hesaplanıp bulunduğu Formun ana sayfasında LCD lerde türkçe karekterler başlığı altında makale şeklinde yayınlandı orayı bir okuyun. Oluşturduğunuz bu matriksi bit bit GLCD ye vermeniz gerekir. Şöyle düşünün matriks te her kapalı olan kare karşılığı 1 (bir) yani high boş olanlar ise sıfır olacak.
Biraz çalışın bakalım bulmak ve yapmak zor değil.

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

oyhan

Ete merhaba
Bahsettiğin konuyu biliyorum. Yani  matrisleri aşmak veya grafik lcd üzerinde farklı fontlar ile yazı yazmak istediğin vakit bunu nasıl halledersin?
Bana protonun formunda bir link verildi. Bahse edilen program forumdaki müzakereler ile hazılanmış geçmişini inceledim. Ama halledemediğim bir yanı var. Linki incelerseniz arkadaşlar sanırım daha iyi anlayacaksınız. Sorun linkde de göreceğiniz üzre fontconvertor programı. Kullanan arkadaş varmı?
İyi çalışmalar temennisi ile...
http://users.picbasic.org/Howto/PPRINT/pprint_enabling_variable_fonts_o.htm
BİRLİKTEN KUVVET DOĞAR:

ete

Bir defa şunu akıldan çıkartmamak gerekiyor. Bir karekteri oluşturmak için mutlaka bir matriks gerekiyor. Normal bir matriks 5x7 kareden oluşuyor. Daha büyük bir font oluşturmak için 4 adet kareyi kullanabilirsin.
4 adet 5x7 matriksi bir büyük kare oluşturacak şekilde bir birine bitişik yerleştir. (iki adet üstte iki adet altta olacak şekilde). Daha sonra font'unu veya karekterini bu 4 adet matriksin içinde oluştur. Diyelimki bir <Ç> karekteri oluşturdun. Şimdi bu karekteri ekrana yazdırırken  bu dört adet matriksi bit olarak istediğin yere yerleştir olur sana büyük bir Ç harfi. İstersen el yazması karekterle için matriks oluşturabilir ve aynı mantık ile yazı yazabilirsin.

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

oyhan

BİRLİKTEN KUVVET DOĞAR:

ete

@Oyhan,
Lİnke baktım. Dosyayı yüklemedim vede yüklememde. Bana lazım değil. Aşağıda konvert ettiği şekle bakarsan kaç tane kareden oluştuğunu görürsün. Anladığım kadarı ile programda büyüklüğü sen tayin ediyorsun. Oda sana karekterleri büyütüp veriyor. Vermek demek sıra şeklinde  datalarını oluşturuyor sanıyorum. Yani sana tarif ettiğim elinle oluşturacağın matriks datalarını veriyor. Senin işine yarıyabilir.
Şimdi sen benim sorduklarıma cevap ver.
- Grafik LCD de büyük font oluşturmak istiyorsun değilmi?
- Cevabın evetse G-LCD ye bit bazında yazmayı biliyormusun?.
- Cevabın evetse bitlerin tek bit değil de 8 bit olarak verildiğini biliyormusun
- Cevabın evetse oluşturacağın font datalarını üstten başlayarak sıra sıra aşağıya doğrı G-LCD ye vereceğini biliyormusun?.
- Cevabın evet ise fontu oluşturup ekrana yazdın demektir.
Yukarıdakilerden birisine hayır dersen öğrenmen gereken daha çok şey var ve tavsiyem biraz daha G-LCD nin çalışma mantığı üzerine kafa yorman olacaktır.

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

oyhan

Merhaba Ete
Sorularının hepsine Evet neyse en sonunda başardım programı kullanmayı ve şuanda dilediğim font ile yazıyı ekranın dilediğim pixeline yazıyorum. Sıra şimdi renkli glcd lerin çalışma mantığını öğrenmeye geldi sanırım. İlgilendiğin için teşkkür ederim. İyi çalışmalar....
BİRLİKTEN KUVVET DOĞAR:

ete

@Oyhan,

Başardığına sevindim. Şimdi öğretme sırası sende. Elinde çalışan bir kısım olduğuna göre diğer arkadaşların yararlanması için buraya biraz örnek koysan iyi olacak. Zira senin gibi zorlanan pek çok kişi var. Onlara yardımcı olursun. Hepsini değil ama bir fontun oluşturulması fontun ekranın istenen bir konumuna yazılması ile ilgili yaptığın örneği buraya bekliyorum.

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

oyhan

Fontconvertor programı; Pc nizde yer alan fontları kullanarak dilediğiniz büyüklükte puntoyu, yaptığınız font seçimi neticesinde glcd ler ile kullanılan "font.inc" gibi (dosya ismi önemli değil tabiki) bir dosya üretiyor. Bu dosyayı protonda yazmış olduğunuz kodun içinde kullandığınız vakit oluşturmuş olduğunuz bu yeni font ile ekrana karakterleri yazıyorsunuz. Proton'un helpinde glcd ile ilgili örnekleri incelemenizi tavsiye ederim. Ben denedim yer yer yazılan metinleri değiştirdim. Ayrıca proton içinde yer alan ("font.inc" di sanırım) dosya incelendiğinde karakterlerin nasıl oluşturulduğu görülecektir. Aşağıda verdiğim linklerdeki programlar ilede, dilediğiniz karakteri oluşturabilirsiniz. Dotmatrix lcdleriniz için ilave olarak tanımlanan yeni karakterlerinizide (cgram deki) bu sitede yer alan programlar vasıtası ile hazırlayabilirisiniz.

http://www.compsys1.com/workbench/Benchware/BINHEX_Utility/binhex_utility.html
BİRLİKTEN KUVVET DOĞAR:

puzzle74

Ben yazılanlardan pek faydalanamadım ama sonra yabancı bi sitede bu konuyla ilgili daha detaylı bir bilgi buldum ve olayı çözdüm, boş bir zamanımda buraya detaylı olarak yazıcam.

karabel

Bahsettiğin siteyi de yazar mısın?