Elektronik Devreler Projeler Elektronik ve biraz daha fazlası İletişim - Araçlar - Dikkat - Topluluk
Elektronik / Elektronik Kaynakları/

MikroC GLCD Bitmap Editör Kullanımı Grafik LCD’ye Resim Ekleme

Sponsorlu Bağlantılar

Merhaba Elektronik Severler,

Bugünkü yazımda MikroC programı kullanarak KS108 tabanlı Grafik LCD’ye nasıl resim ekleneceğini göstercem.LCD ekranım 128×64 çözünürlüğe sahip. MikroC programı açın (MikroC programı yoksa buradan indirebilirsiniz.) MikroC derleyici programında menüden File >New>New Project tıklayarak Şekil 1’de pencere gelecek

mikro-c-file-new-new-project

Next butonuna tıklayın.Şekil 2’de pencere gelecek

mikro-c-project-winzard

Project Name: Projenizin adı.
Project folder: Projenizi nereye kaydettiğini gösterir.Siz isterseniz Browse’ye tıklayarak projenizi istediğiniz yere kaydedin.

NOT: Paint ve Not Defterinde kaydettiğimiz dosyaları projenizi bulunduğu yere kaydedin.

Device Name: Projenize hangi PIC kullanacağınıza sorar.Ben PIC18F4550 kullancam.
Device Clock: Osilatör frekansı 20 MHz kullancam.

Diğer pencelere Next tıklayıp Şekil 3’deki kod penceresi göreceksiniz. void main( ) { } onları silin.

kod-penceresi-goreceksiniz-void-main

Project > Edit Project tıklayınız Şekil 4’deki ayarları yapınız aksi taktirde PIC’niz gerçek ortamda düzgün çalışmaz..OK’u tıklayın

mikroc-sekil4

Şimdi diğer aşamaya Paint programı açarak. Dosya > Aç tıklayarak Grafik LCD’ye hangi resmi ekleyecekseniz onu açın.Sonra klavyeden Ctrl+A basarak resmi seçili hale getirdik.Resmin sağ en alt köşedeki farenin sol tuşuna basarak Sağ en alt köşedeki kırmızı kutuya bakarak (Grafik LCD Ekranın çözünürlüğe göre ayarlayın) sol üst köşeye doğru sürükleyin (ŞEKİL 5).

mikroc-paint-sekil5

ŞEKİL 6’daki Ctrl+A basamadan yukarıdaki işlemi aynısını yapın.(Beyaz sayfayı).

mikroc-paint-sekil6

Anlatığım işlemi XP işletim sistemi kullanan içindir.Windows 7 işletim olanlar için Paint programın menülerin (Tam olarak nerede olduğunu bilmiyorum) içinde Yeninden Boyutladır seçeneğine tıklayarak piksel işaretleyin lcd ekranın çözünürlüğe göre ayarlayın.

Sonra Dosya > Faklı Kaydet tıklayarak. Kayıt türü: Tek Renkli Bit Eşlem (*.bmp;*.dip) seçiniz.LCD projeniz nereye kaydettiyseniz oraya kaydedin (ŞEKİL7).

mikroc-paint-sekil7

MikroC programında Tools > GLCD Bitmap Editör tıklayın. ŞEKİL 8’deki pencere gelecek.

mikroc-programinda-tools-glcd-bitmap-editor

KS108 sekmedeki Load BMP tıklayın az önce kaydettiğiniz resmi açın.
Copy Code To Clipboard tıklayın.
• Not Defteri programı açınız ve kod oraya yapıştırınız. Sonra Dosya > Farklı Kaydet tıklayın.
• Dosya adına *.c uzantı olacak şekilde yazın.Örnek: mektup.c, 320volt.c
• LCD projenizi nereye kaydettiyseniz oraya kaydedin. (ŞEKİL 9)

mikroc-programinda-tools-glcd-bitmap-editor-save

• Aşağıdaki kodları MikroC programına yazın

#include "mektup.c"

char GLCD_DataPort at PORTD;

sbit GLCD_CS1 at LATB5_bit;
sbit GLCD_CS2 at LATB4_bit;
sbit GLCD_EN  at LATB3_bit;
sbit GLCD_RW  at LATB2_bit;
sbit GLCD_RS  at LATB1_bit;
sbit GLCD_RST at LATB0_bit;


sbit GLCD_CS1_Direction at TRISB5_bit;
sbit GLCD_CS2_Direction at TRISB4_bit;
sbit GLCD_EN_Direction at TRISB3_bit;
sbit GLCD_RW_Direction at TRISB2_bit;
sbit GLCD_RS_Direction at TRISB1_bit;
sbit GLCD_RST_Direction at TRISB0_bit;

void main() {
ADCON1 |=0x0F;
CMCON |=7;
Glcd_Init();

Glcd_Fill(0x00);
while(1){
Glcd_Image(mektup);

}
}

ŞEKİL 10 ve Şekil 11’deki işlemleri yapın.Aksi taktirde LCD ekranda resim çıkmaz.

mikroc-paint-sekil10

mikroc-paint-sekil11

ŞEKİL 12’deki işlemleri yapınız. Eğer kırmızı yazı çıkarsa hata yaptınız demektir. İşlemleri tekrar gözden geçiriniz.

mikroc-paint-sekil12

ŞEKİL 13 PIC18F4550 İle yapılan çalışmanın proteus isis görüntüsü;

KS108-GRAFIK-LCD

Porjeye ait proteus simülasyon ve MikroC kod dosyaları: mikroc-glcd-bitmap-editor-kullanimi.ZIP

Yazım burada bitti.Bir sonraki yazımda görüşmek üzere..

  • Burak

    Hocam elleriniz dert görmesin sayenizde ufkum açıldı :) Jal’ile nasıl yapabiliriz bu işlemi yardımcı olurmusunuz ?

    • İbrahim Karacan

      Jal programlama dilini bilmiyorum.Yorumuz için teşekkür ederim…