//yazar: eray gökkaya
//versiyon: 1.1
//programa baslama tarihi : 23/12/2011
//saat:01:10
//not: mikrodenetleyiciye enerji verildiği anda önce b portunun ilk 4 bitini yakan
//son 4 bitini söndüren 500 ms sonra ilk dört bitini söndüren son4 bitini yakan ve 500
//ms zaman aralıkları ile peryodik olarak çalışan program
#include <16f877.h>//kullanılacak mikrodenetleyici kütüphane dosyaları tanıtılıyor
#fuses XT,NOWDT,NOLVP,NOPUT //konfigürasyon ayarları yapılıyor
#use delay(clock=4000000) //kullanılacak osilatör değeri belirtiliyor
#use fast_io(b) //b portunun kullanılacağı belirtiliyor.
void main()
{
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
set_tris_b(0b00000000); //b portunun tamamı çıkış olarak ayarlandı.
output_b(0b00000000); //b portunun çıkışları baslangıç durumunda lojiik 0 yapıldı.
while(TRUE) //sonsuz döngü oluşturuluyor
{
output_b(0b00001111); //ilk dört bit lojik 1 yapıldı
delay_ms(500); //500 milisaniye bekleme yapılıyor
output_b(0b11110000); //7 son dört bit lojik 1 yapılıyor
delay_ms(500); // 500 ms bekleme yapılıyor v
}
} |