LCD Animasyonlu Yazı ve Buton Kontrolü

PIC16F628A ile LM044L LCD ekran sürme ve basılan butonu algılama.

Bu yazımda sizlere yapmış olduğum basit bir uygulamayı anlatacağım. Başlıkta da belirttiğim gibi bu projede PIC16F628A entegre ve LM044L LCD ekran kullanılıyor.

İlk önce Proteus ISIS programında çizilmiş devreyi inceleyiniz.



Daha sonra kod kısmına geçelim. Kod C diliyle yazılıp CCS C Compiler ile derlenmiştir.

Tüm proje kodu:


#include <16F628A.h>



#FUSES NOWDT       

#FUSES XT         

#FUSES NOPUT             

#FUSES NOPROTECT      

#FUSES NOBROWNOUT     

#FUSES NOMCLR           

#FUSES NOLVP      

#FUSES NOCPD    



#use delay(clock=4000000)



#define use_portb_lcd TRUE



#include <lcd420.c>



void cc(char c)

{

   lcd_putc(c); delay_ms(100);

}



void cls()

{

   lcd_init();

}



BOOLEAN ust, alt, sag, sol, ort;



void main()

{

   set_tris_a(0b00011111);

   set_tris_b(0b00000000);

   

   lcd_init(); delay_ms(20);

   

   lcd_gotoxy(1,1); cc("MUHAMMED YUNUS AKDAG");

   lcd_gotoxy(1,2); cc("ELEKTRONiK UYGULAMA ");

   lcd_gotoxy(1,3); cc("TARiH:    01.04.2015");

   

   delay_ms(2000);

   

   cls();

   

   while (TRUE)

   {

      ust = !input_state(PIN_A0);

      alt = !input_state(PIN_A1);

      sol = !input_state(PIN_A2);

      sag = !input_state(PIN_A3);

      ort = !input_state(PIN_A4);

      

      lcd_gotoxy(1,1);

      

      printf(lcd_putc, "%d %d %d %d %d", ust, alt, sol, sag, ort);

   }

}



Kod çok karışık olmadığı için açıklamaları buraya yazmayı uygun buldum.

set_tris_x: Bu fonksiyon portların giriş mi çıkış mı olduğunu belirtiyor.

lcd_init() : LCD sürücüsü için bir nevi kurulum yapıyor.

delay_ms(x) : Bu fonksiyon milisaniye olarak bekleme işlemi yapıyor.

lcd_gotoxy(x, y) : LCD üzerinde ilgili karaktere gidiyor. x = satır, y = sütun.

cc() : Animasyonlu olarak yazı yazıyor. (Üstteki cc fonksiyonunu çağırıyor.)

while (TRUE) {...} : Sonsuz döngü. Geri kalan tüm işlemler burada yapılıyor. Hangi tuşların basılı olduğunu kontrol edip LCD ekrana yazıyor.

Tekrar görüşmek dileğiyle hoşçakalın.
  • Etiketler;
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git