Matris LED Display Uygulaması
AMAÇ:
Mikrodeneleyicilerin çalışma sistemini öğrenmek, C dili ile program yazabilme ve 16F877A entegresini programlayabilme yeteneğini kazanmak.
YAPILACAK İŞ:
Matris Led Displayde istenilen karakterlerin gösterilmesi
DENEYİN BAĞLANTI ŞEMASI
PROGRAM KODU:
#include <16f877a.h>
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD
#use delay(clock=4000000)
#use fast_io(b)
#use fast_io(c)
//******** Matrise Gönderilecek Karakter Bilgileri *******
int A[]=0×03,0×75,0×76,0×75,0X03;
int B[]=0×00,0X36,0X36,0×36,0X49;
int C[]=0×41,0x3E,0x3E,0x3E,0x5D;
int D[]=0×00,0x3E,0x3E,0x3E,0×41;
int E[]=0×00,0xB6,0xB6,0xB6,0xBE;
int arti[]=0×77,0×77,0×41,0×77,0×77;
int cift_ok[]=0x6B,0x5D,0×00,0x5D,0x6B;
//******* Sütun Seçme Fonksiyonu ************
int sutunsec (int s)
switch (s)
case 0: return(0×10);break;
case 1: return(0×08);break;
case 2: return(0×04);break;
case 3: return(0×02);break;
case 4: return(0×01);break;
//******* Matrise Veri Gönderme Fonksiyonu *******
void matris_karakter_gonder(char harf[], int tekrar)
int i,j;
for (i=1;i<tekrar;i++)
for(j=0;j<5;j++)
output_c(sutunsec(j));
output_b(harf[j]);
delay_ms(10);
/********* ANA PROGRAM FONKSİYONU********/
void main ()
setup_psp(PSP_DISABLED);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_CCP1(CCP_OFF);
setup_CCP2(CCP_OFF);
set_tris_b(0×00);
set_tris_c(0×00);
while(1)
matris_karakter_gonder(A,25);
matris_karakter_gonder(B,25);
matris_karakter_gonder(C,25);
matris_karakter_gonder(D,25);
matris_karakter_gonder(E,25);
matris_karakter_gonder(arti,25);
matris_karakter_gonder(cift_ok,25);
İŞLEM BASAMAKLARI
1.Devreyi bord üzerine kurunuz.
2. Kodu yazıp derleyiniz.Hex kodunu Pice yükleyiniz.
3.Devrenin çalışmasını inceleyiniz.
DEĞERLENDİRME ÇALIŞMALARI
1.Kodların yanına açıklamalarını yazınız.
2. Karakterlerin kaymasını nasıl sağlarız.
C ile programlama uygulamaları-6
Hiç yorum yok:
Yorum Gönder