"Karmaşıklığı kontrol etmek Programlamanın en asıl işidir."

27 Ağustos 2014 Çarşamba

CCS C Buton Uygulaması


#define ; 2 türlü kullanımı vardır

- Programın bu noktadan verilen metin ve üzerinde kimlik basit bir dize değiştirme sağlamak için kullanılır.

Örnek ; 

#define LED pin_b1 
output_high(LED);

- İkinci formu (C makro) olarak yerel tanımlayıcılar metinde benzer tanımlayıcıları ile eşleştirilir ve kullanıldığı makro geçirilen metin ile değiştirilir.

Örnek ;

#define LED_YAK(pin) output_high(pin)
#define LED_SONDUR(pin) output_low(pin)
while ( 1 ) { 
LED_YAK(pin_b1);
LED_SONDUR(pin_b0);
} 

Basit Bir Buton Uygulaması

input(pin); Pini Okumak İçin Kullanılır Pin durumuna göre 1 veya 0 döner 1 high 0 low

Örnek ;








//------------------------------------------------------------------------------
#include <16F876.h>// Kullanılcak denetleyicinin başlık dosyası tanımlanıyor
#include <stdio.h>
// Denetleyici konfigürasyon ayarları
#FUSES HS                       //High Speed
#FUSES NOWDT                    //No Watch Dog Timer
#FUSES NOPUT                    //No Power Up Timer
#FUSES NOPROTECT                //Code not protected from reading
#FUSES NOBROWNOUT               //No brownout reset
#FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOCPD                    //No EE protection    
#use delay (clock=20000000) // Gecikme fonksiyonu için kullanılan osilatör frekansı
//------------------------------------------------------------------------------
#define LED_YAK(pin) output_high(pin)
#define LED_SONDUR(pin) output_low(pin) 
#define LED pin_b1
#define BUTTON pin_b0
//------------------------------------------------------------------------------
void main () {
setup_spi(SPI_SS_DISABLED); // SPI birimi devre dışı
setup_timer_1(T1_DISABLED); // Timer1 devre dışı
setup_timer_2(T2_DISABLED,0,1); // Timer2 devre dışı
setup_adc_ports(NO_ANALOGS); // ANALOG girdi 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ışı
while(1){
if (input(BUTTON)==1){ // Butona Basılırsa
LED_YAK(LED); // LED Yak
}
}
}
//------------------------------------------------------------------------------

0 yorum:

Yorum Gönder

İletişim Formu

Ad

E-posta *

Mesaj *