CCS C ile Yürüyen Işık Uygulaması

pr_01_37_max

 

Kitaptan kara şimşek led programı

 

/******************************************************
 Uygulama Adı : Yürüyen Işık
 PIC PROG/DEKA : Port B jumper'ı LED konumunda olmalı
*******************************************************/

#include <16f877.h> // Kullanılacak denetleyicinin başlık dosyası tanıtılıyor.

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

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

int i, led; //i ve led isminde tam sayı tipinde 8 bitlik değişkenler tanıtılıyor.

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

void main ()
{
 setup_psp(PSP_DISABLED); // PSP 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 tümüyle çıkış olarak yönlendiriliyor

 output_b(0x00); // B portu çıkışları sıfırlanıyor

 while(1)
 {
 led=1; //led değişkeni değeri 1 oluyor

 for(i=0;i<=7;i++) // for döngüsü oluşturuluyor
 {
 output_b(led); // led değişkeni değeri B portuna gönder
 led=led<<1; // led değişkeni değerini 1 bit sola kaydır
 delay_ms(100); // 100 msn'lik gecikme veriliyor
 }

 led=0x80; //led değişkenine değer yükleniyor
 output_b(led); //B portuna 0b10000000 bilgisi gönderiliyor
 delay_ms(100); // 100 msn'lik gecikme veriliyor
 
 for(i=0;i<=6;i++) // for döngüsü oluşturuluyor
 {
 led=led>>1; // led değişkeni değerini 1 bit sağa kaydır
 output_b(led); // led değişkeni değeri B portuna gönder
 delay_ms(100); // 100 msn'lik gecikme veriliyor
 }
 }
}




 

Yürüyen Işık Uygulaması

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