CCS C ile Paralel LCD Uygulaması

pr_01_37_max

/******************************************************
 PIC16F877 ile Paralel LCD Uygulaması
PIC PROG/DEKA : Port B jumper'ı LCD konumunda olmalı
*******************************************************/

#include  // Kullanılacak denetleyicinin başlık dosyası tanıtılıyor.

// Denetleyici konfigürasyon ayarları
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD

#use delay (clock=4000000) // Gecikme fonksiyonu için kullanılacak osilatör frekansı belirtiliyor.

#use fast_io(b) //Port yönlendirme komutları B portu için geçerli

#define use_portb_lcd TRUE // LCD B portuna bağlı

#include  // lcd.c dosyası tanıtılıyor

int x; // Tamsayı tipinde değişken tanımlanıyor
float y; // Ondalıklı tipte değişken tanımlanıyor
char z; // Karakter tipinde değişken tanımlanıyor

byte dizi[6]={0x45,0xC6,0xA3,0xE2,0x56};

//********** ANA PROGRAM FONKSİYONU*******

void main ( )
{
 setup_psp(PSP_DISABLED); // PSP birimi devre dışı
 setup_spi(SPI_SS_DISABLED); // SPI birimi devre dışı
 setup_timer_1(T1_DISABLED); // T1 zamanlayıcısı devre dışı
 setup_timer_2(T2_DISABLED,0,1); // T2 zamanlayıcısı devre dışı
 setup_adc_ports(NO_ANALOGS); // ANALOG giriş yok
 setup_adc(ADC_OFF); // ADC birimi devre dışı
 setup_CCP1(CCP_OFF); // CCP1 birimi devre dışı
 setup_CCP2(CCP_OFF); // CCP2 birimi devre dışı

 set_tris_b(0x00); // B portu komple çıkış

 lcd_init(); // LCD hazırlanıyor

 x=10; // x değişkenine değer veriliyor
 y=32.6; // y değişkenine değer veriliyor
 
 
 
 while(1) // Sonsuz döngü
 {shift_right(dizi,4,1);
 lcd_send_byte(0,0x0d); // LCD'ye komut gönderiliyor. İmleç yanıp sönsün komutu.
 printf(lcd_putc,"\f CCS C"); // LCD'ye veri gönderiliyor.
 delay_ms(1000); // 1 sn gecikme
 printf(lcd_putc,"\n Derleyicisi");
 delay_ms(1000); // 1 sn gecikme
 lcd_gotoxy(1,2); // Kursör 1.sütun, 2.satıra konumlandırılıyor.
 printf(lcd_putc,"\fX DEGERI=%d",x); // LCD'de tamsayı olarak x değişken değeri görüntüleniyor.
 delay_ms(1000); // 1 sn gecikme
 printf(lcd_putc,"\f\nY DEGERI=%f",y); // LCD'de ondalıklı olarak y değişken değeri görüntüleniyor.
 delay_ms(1000); // 1 sn gecikme
 printf(lcd_putc,"\fDIRENC"); // LCD siliniyor ve "Direnc" stringi yazdırılıyor.
 delay_ms(1000); // 1 sn gecikme
 z=lcd_getc(3,1); // LCD'de o an 3.Sütun ve 1.Satırda olan karakter alınıyor. Alınan değer z değişkenine aktarılıyor.
 printf(lcd_putc,"\f%c",z); // z değişkeni LCD'ye aktarılıyor
 delay_ms(2000); // 2 sn gecikme
 }
}

Paralel LCD Uygulaması

Bu yazı CCS C Örnekleri kategorisine gönderilmiş ve , ile etiketlenmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.