Teknikim

Üye Girişi

PIC Uygulamaları 8-LCD'ye Kayan Yazı Yazdırma
 

Yazan: Tuna BULUT, Tarih: 21-06-2008 14:18

Okunma Sayısı : 451

Beğenilme : 5

Yayınlama yeri : Dersler, PIC Dersleri

Kayan Yazı Mantığı

Yazıyı sağa kaydırma mantığı oldukça basit, araya belirli miktarda gecikmeler koyarak ve 1 hücre sağa kaydırarak yazıyı yazdırıyoruz. Yazının başlangıcı satır sonuna geldiğinde yazıyı başa alıyoruz ki sonra yazı yolunu kaybetmesin :) Tabi her yazdırmadan sonra da ekranı temizliyoruz, yoksa önceki karakterler ekranda kalır ve ekranın tamamı karakterlerle dolar.

Kod Analizi

ADRESE_GIT1

SWAPF  ADRES1,F

MOVF   ADRES1,W

MOVWF  PORTB

KMT

SWAPF  ADRES1,F

MOVF   ADRES1,W

MOVWF  PORTB

KMT

RETURN

;1. satırda istenilen adrese gider. 4 bit lcd mantığına göre gönderilecek verinin önce üst 4 biti, sonra da alt 4 biti data pinlerine gönderilir, bunun için de SWAPF komutuyla ilk ve son 4 biti aralarında değiştiriyoruz ve üst 4 biti portb'ye aktarıyoruz, sonra tekrar aralarında değiştirerek alt 4 biti portb'ye aktarıyoruz. Kodun üst kısımlarında ADRES1 değişkenine b'10000000' binary sayısını ilk değer olarak yüklemiştik. Bu değerle yazıyı 1. satır, 1.sütundan başlatmış oluyoruz. 16x2 lcd ekranda ilk satır adresleri b'1000d3d2d1d0' değeri veri pinlerinden lcd ye gönderilerek seçilir. 2. sütunu seçmek için d0 1, d1, d2, d3 ise 0 yapılır ve diğer sütun adresleri de bu şekilde artarak gider.

ADRESE_GIT2 

SWAPF  ADRES2,F

MOVF   ADRES2,W

MOVWF  PORTB

KMT

SWAPF  ADRES2,F

MOVF   ADRES2,W

MOVWF  PORTB

KMT

RETURN

; 2. satırda istenilen adrese gider. ADRES1 değişkenine ilk değer olarak b'11000000' değerini yüklemiştik. 1. satır seçiminden farklı olarak 6. biti de 1 yapıyoruz.

KAYDIR

INCF   ADRES1,F

MOVF   ADRES1,W

ANDLW  B'10001111'

MOVWF  ADRES1

INCF   ADRES2,F

MOVF   ADRES2,W

ANDLW  B'11001111'

MOVWF  ADRES2

CALL   UPUZUN_GECIKME

CALL   UPUZUN_GECIKME

CALL   UPUZUN_GECIKME

TEMIZLE

GOTO   BASLA

;Belirttiğimiz adresi her yazma işlemi tamamlandıktan sonra 1 sağa kaydırır ve ekranı temizler. 1.satır adresini b'10001111' sayısıyla AND işlemine tabi tutuyoruz ki 16. sütundan sonra yazı 1. sütuna dönsün. 2. satır adresini de aynı sebepten dolayı b'11001111' sayısıyla AND'liyoruz.

Isis simülasyon dosyalarını buradan indirebilirsiniz.



   
Beğenilme
E-mail olarak gönder
İlgili makaleler
Teknikim'e kaydet

Okuyucu yorumları  RSS feed Yorum
 

Ortalama Üye Değerlendirmesi

   (0 Oylama)

 


Yorumunuzu ekleyin
Sadece kayitli kullanicilar bir Makaleyi yorumlayabilir. Lütfen ücretsiz üye olun veya giriş yapın.

Gönderilen yeni yorum yok



mXcomment 1.0.8 © 2007-2008 - visualclinic.fr
License Creative Commons - Some rights reserved