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

Standart
  • CCS-C PIC derleyici programı ile yeni proje oluşturalım.
  • Şimdi i ve led isimli 2 tane değişken oluşturalım.

#include <Yuruyen_İsik.h>
int i, led;                                                 // i ve led isimli değişken tanımlandı.

  • LED’ ler için B Portunu kullanacağımız için B Portunu Çıkış olarak ayarlayalım ve B Portunu Ana Program (void main()) içinde tüm pinlerini sıfırlayalım.

void main()
{
set_tris_b(0x00);                        // B Portu Çıkış olarak ayarlandı.
output_b(0x00);                          // B Portu tüm pinleri sıfırlandı.

while(1)
{

}

}

  • for döngüsü kullanarak led’i sola kaydıralım.

led=1;                                                       //led değişkeni değeri 1 yapıldı.

for(i=0;i<=7;i++)                                 // for döngüsü oluşturuldu
{
output_b(led);                                    //led değişken değeri B Portuna gönderildi.
led=led<<1;                                         // led değişken değeri 1 sola kaydırdı.
delay_ms(100);                                 // 100 ms’lik gecikme ayarlandı.
}

  • for döngüsü kullanarak led’i sağa kaydıralım.

led=0x80;                                           //led değişkenine değer atıldı.

for(i=0;i<=5;i++)
{
led=led>>1;                                      // led değişkeni 1 sağa kaydırıldı.
output_b(led);                               // B Portuna led değişken değeri gönderildi.
delay_ms(100);                             //100 ms’lik gecikme ayarlandı.
}

  •  Şimdi Proteus programında devre çizimini yapalım.(Şekil-1)
29

Şekil-1.

  • Kodların son kontrollerini yapalım ve “Build” diyerek hatasız olduğunu kontrol edelim ve hex dosyası oluşturalım. ( NOT: hex dosyası “Build” dediğimizde otomatik oluşturuluyor.)

#include <Yuruyen_İsik.h>
int i, led;                                                  // i ve led isimli değişken tanımlandı.

void main()
{
set_tris_b(0x00);                                // B Portu Çıkış olarak ayarlandı.
output_b(0x00);                                  // B Portu tüm pinleri sıfırlandı.

while(true)                                            //while(1) demektir.
{
led=0x01;                                               //led değişkeni değeri 1 yapıldı.

for(i=0;i<=7;i++)                                // for döngüsü oluşturuldu
{
output_b(led);                                  //led değişken değeri B Portuna gönderildi.
led=led<<1;                                        // led değişken değeri 1 sola kaydırdı.
delay_ms(100);                                // 100 ms’lik gecikme ayarlandı.
}

led=0x80;                                         //led değişkenine değer atıldı.

for(i=0;i<=5;i++)
{
led=led>>1;                                    // led değişkeni 1 sağa kaydırıldı.
output_b(led);                             // B Portuna led değişken değeri gönderildi.
delay_ms(100);                           //100 ms’lik gecikme ayarlandı.
}
}

}

  • Şimdi çizdiğimiz devredeki PIC’e hex dosyasını yükleyelim ve çalıştıralım.(Şekil-2)
30

Şekil-2.

PROTEUS DEVRE ÇİZİMİ + CCS-C KODU + HEX DOSYASI

 

Yorum bırakın