Site icon Ercan Koçlar

MikroC de KÜTÜPHANE HAZIRLAMA

Çalışmalarım - Yazılarım - Tecrubelerim

mikroc-kutuphane-hazırlama

This post is also available in: English (İngilizce)


Video Anlatım

Kütüphane Hazırlamak

Kütüphaneler Hangi Dosyalardan Oluşur

  1. Fonksiyonlar
  2. Header ve Port Tanımlamaları

Kütüphaneler Yapılsal Olarak Nasıl Yazılmalıdır?


KÜTÜPHANE HAZIRLAMAK

Kütüphane hazırlayarak sensör dışında matematiksel işlemleri ve sürekli yapmamız gereken “LED yak-söndür” işlemlerini de kolaylıkla yapabiliriz

 

KÜTÜPHANELER HANGİ DOSYALARDAN OLUŞUR

NOT: Bu dosyaları kullanmak için Fonksiyon dosyasına header dosyası include edilir ve main dosyasınada fonskiyon dosyası include edilir.

-Fonksiyonlar

Fonksiyonların harici .C dosyasına yazılması(büyütmek için resme tıklayın)
//FONKSİYON DOSYASI 
//Aşağıda örnek olarak hazırlanmış 2 adet fonksiyon görülmektedir

#include "header.h"//header dosyası fonksiyon dosyasına çağırılmıştır

//1. fonksiyon
void LED_YAK(unsigned char sure)
{
  LED_TRIS=0;//bu değişken header dosyasında belirtildi- main de portun giriş-çıkış ayarını 
             //yapılması için ilişkilendirecek şu durumda port çıkış durumundadur
  LED=0;//bu değişken header dosyasında belirtildi - mainde istenilen port ile ilişkilendirilecek
  vdelay_ms(sure*saniye);//saniye headerda #define komutu ile 1000 rakamına eşitlendiğinden 
                         // şu an parantez içi aslında sure*1000 dir 
  LED=1;
}

//2. fonksiyon
void LED_FLASH(unsigned char flash_sure , unsigned char yanma_suresi)//fonksiyonlar değer döndürmedğinde void değer alır
{
  int i;
  LED_TRIS=0;
  for(i=0;i<yanma_suresi;i++)
   {
    LED=0;
    vdelay_ms(flash_sure*saniye);
    LED=1;
    vdelay_ms(flash_sure*saniye);
   }
}

 

-Header ve Port Tanımlamaları

.h header dosyası hazırlanışı, pin tanımalamarı yapılıyor( büyütmek için resme tıklayın)
header.h Kodları 
extern sfr sbit LED;//port ilişkilendirilmesi için tanımlanan değişken 
extern sfr sbit LED_TRIS; //portun giriş yada çıkış ayarını yapmak için oluşturulan değişken
#define saniye 1000 // saniye yazılan heryerde 1000 rakamı işlem görecektir

 

KÜTÜPHANELER YAPISAL OLARAK NASIL YAZILMALIDIR?

Ana(main) bölümde kargaşa azalır ve kontrol artar(büyütmek için resme tıklayın)
led_yak.c Kodları
#include "fonksyonlar.c"//FONKSİYONLARIN YAZIDIGI DOSYA INCLUDE EDILIR

sbit LED at RB4_bit;//PORT YÖNLENDİRMESİ YAPILIR BUNA GÖRE FONKSİYONDA LED YAZAN HER YERDE "RB4" PORTU KULLANILACAK
sbit LED_TRIS at TRISB4_bit;//YÖNELDİRİLEN PORTUN GIRIS CIKIS OLUP OLMADIGININ AYARLANMASI SAĞLANIR.BUNA GÖRE FONKSIYONDA LED_TRIS=1
                            //İSE BU PORT GIRIS OLACAKTIR
main()
{
  LED_YAK(5);
  delay_ms(2000);
  LED_FLASH(2,10);
}

“MIKROC KÜTÜPHANE HAZIRLAMA” VİDEO DERS


This post is also available in: English (İngilizce)

Exit mobile version