Koşul Yapıları ve Döngüler

CCS C Dersleri - Arduino ve Mikrodenetleyici Programlama CCS C Dersleri - Bölüm 2

CCS C Dersleri - Bölüm 2

📌 Koşul Yapıları ve Döngüler

CCS C’de koşullu ifadeler (if, switch-case) ve döngüler (while, for) program akışını kontrol etmek için kullanılır. Mikrodenetleyici ile karar verme ve tekrar eden işlemleri yönetme açısından kritik öneme sahiptir.

📌 2.1. if-else Yapısı

if-else, belirli bir koşulun doğru olup olmadığını kontrol eder.

🔹 Buton Basıldı mı Kontrol Etme


void main() {
    set_tris_a(0xFF);  // PORTA giriş olarak ayarlandı
    set_tris_b(0x00);  // PORTB çıkış olarak ayarlandı

    while(TRUE) {
        if(input(PIN_A0)) {  // Eğer A0 butonu basıldıysa
            output_high(PIN_B0);  // LED’i yak
        } else {
            output_low(PIN_B0);   // LED’i söndür
        }
    }
}
        

📌 2.2. switch-case Yapısı

switch-case, bir değişkenin farklı değerlerini kontrol etmek için kullanılır. Özellikle menüler, çoklu buton kontrolleri için idealdir.

🔹 Butona Göre Farklı LED Yakma


void main() {
    int buton_durum;
    set_tris_a(0xFF);
    set_tris_b(0x00);

    while(TRUE) {
        buton_durum = input(PIN_A0) + (input(PIN_A1) * 2);

        switch(buton_durum) {
            case 0:
                output_low(PIN_B0);
                output_low(PIN_B1);
                break;
            case 1:
                output_high(PIN_B0);  // Buton A0 basıldıysa LED1 yanar
                break;
            case 2:
                output_high(PIN_B1);  // Buton A1 basıldıysa LED2 yanar
                break;
            case 3:
                output_high(PIN_B0);
                output_high(PIN_B1);  // İkisi de basıldıysa her iki LED yanar
                break;
        }
    }
}
        

📌 2.3. while Döngüsü

while döngüsü, belirli bir koşul sağlandığı sürece kodu tekrar çalıştırır.

🔹 1’den 10’a Kadar Saydırma


void main() {
    int sayi = 1;
    while(sayi <= 10) {
        printf("Sayi: %d\n", sayi);
        sayi++;
        delay_ms(500);
    }
}
        

📌 2.4. for Döngüsü

for döngüsü, belirli bir sayıda tekrar eden işlemler için idealdir.

🔹 LED’i 5 Kere Yakıp Söndürme


void main() {
    set_tris_b(0x00);

    for(int i = 0; i < 5; i++) {
        output_high(PIN_B0);
        delay_ms(500);
        output_low(PIN_B0);
        delay_ms(500);
    }
}
        

🚀 Devamı: Bölüm 3

Bölüm 3'ye Git

Yorum Gönder

0 Yorumlar