Kod:
	#include <16f877.h>     // Kullanılacak denetleyicinin başlık dosyası tanıtılıyor.
// Denetleyici konfigürasyon ayarları
#fuses XTNOWDTNOPROTECTNOBROWNOUTNOLVPNOPUTNOWRTNODEBUGNOCPD
#use delay (clock=4000000) // Gecikme fonksiyonu için kullanılacak osilatör frekansı belirtiliyor.
// Giriş ve çıkış pinlerine isim atanıyor
#define buton_ileri pin_a0
#define buton_geri  pin_a1
int i=0hiz=10;
const int 
/********* 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_DISABLED01); // 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ışı
   output_b(0x00);
   while(1) // Sonsuz döngü
   {
      if (input(buton_ileri)) // İLERİ Butonuna basıldı ise
      {
         output_b(adim[i]);  // Step yıldiz adım ileri
         while(input(buton_ileri));// Basılan tuş bırakılana kadar bekle
         delay_ms(hiz);            // Adımlar arası bekleme süresi
         if (i==7)                 // i değişkeni 7 olunca i değeri -1 olsun
            i=-1;
         i++;                      // i değişkenini 1 arttır
      }
      if (input(buton_geri)) // GERİ Butonuna basıldı ise
      {
         if (i==0)                 // i değişkeni 0 ise i değeri 8 olsun
            i=8;
         i--;                      // i değişkenini 1 azalt
         output_b([i]); // Step yildiz 1 adım geri
         while(input(buton_geri)); // Basılan tuş bırakılana kadar bekle
         delay_ms(hiz);            // 
      }
   }
}
 
konfügrasyon ayarlarını kendi devrenize göre uyarladıktan sonra yazılımı denermisiniz