Arduino, mikrodenetleyici tabanlı projeler geliştirmek için kullanılan bir platformdur. Arduino programları, özel bir yazılım olan Arduino IDE'de yazılır ve bu yazılım, Arduino kartınızın mikrodenetleyicisine yüklenir. İşte Arduino programlarının nasıl çalıştığını ve temel programlama yapılarını öğrenmek için ihtiyaç duyduğunuz bilgiler:
Arduino Programlarının Çalışma Mantığı
Arduino programları, genellikle "setup()" ve "loop()" adlı iki temel işlevi içerir.
-
setup() Fonksiyonu: Arduino kartınız başladığında sadece bir kez çalışan bu işlev, başlangıç ayarlarını yapmak için kullanılır. Örneğin, giriş/çıkış pinlerini yapılandırmak veya başlangıçta belirli bir mesajı seri monitöre göndermek gibi işlemler burada yapılır.
-
loop() Fonksiyonu: "loop()" işlevi, Arduino kartınızın çalıştığı ana döngüdür. Kod bu döngü içinde sürekli olarak çalışır ve projenizin temel işlevini gerçekleştirir. Örneğin, bir LED'i yanıp söndürmek veya sensör verilerini okumak gibi işlemler burada gerçekleştirilir.
Temel Programlama Yapıları
Arduino programlamasına başladığınızda, aşağıdaki temel programlama yapılarını öğrenmek işinizi kolaylaştırır:
Değişkenler (Variables)
- Değişkenler, verileri saklamak ve işlemek için kullanılır. Örneğin, bir LED'in durumunu saklamak veya sensör verilerini depolamak için değişkenler kullanabilirsiniz.
- Örnek:
int ledPin = 13;
LED'in bağlı olduğu pin numarasını saklamak için bir değişken tanımlama gibi.
Döngüler (Loops)
- Döngüler, belirli bir işlemi tekrarlamak için kullanılır. Arduino'da en sık kullanılan döngü, "loop()" işlevidir.
- Örnek: LED'i belirli bir desende yanıp söndürmek için bir döngü kullanma.
Koşullu İfadeler (Conditional Statements)
- Koşullu ifadeler, belirli bir şartın sağlanıp sağlanmadığını kontrol etmek için kullanılır. "if", "else if" ve "else" gibi ifadeler sıkça kullanılır.
- Örnek: Bir sensör değerini kontrol ederek, belirli bir eşik değeri aşıldığında bir işlem yapma.
Fonksiyonlar (Functions)
- Fonksiyonlar, belirli bir görevi yerine getirmek için kullanılır ve kodunuzu daha modüler hale getirir. Arduino IDE'de "setup()" ve "loop()" gibi ön tanımlı fonksiyonlar vardır, ancak kendi özel fonksiyonlarınızı da tanımlayabilirsiniz.
- Örnek: LED'i yanıp söndüren bir fonksiyon tanımlama ve bu fonksiyonu istediğiniz zaman çağırma.
Seri Monitör (Serial Monitor)
- Arduino'da "Serial Monitor", kodunuzun çalışmasını izlemek ve hata ayıklamak için kullanılır. Seri monitör aracılığıyla değerleri ve mesajları görüntüleyebilirsiniz.
- Örnek: Sensör verilerini seri monitörde görüntüleme.
Arduino programlamasında temel programlama yapılarını anladığınızda, projelerinizi daha karmaşık hale getirebilir ve istediğiniz işlemleri gerçekleştirebilirsiniz. Başlangıçta basit projelerle başlayarak bu yapıları pratiğe dökerek Arduino programlamasını daha iyi öğrenebilirsiniz.
Sıkça Sorulan Sorular
setup()
: Arduino kartınız başlatıldığında sadece bir kez çalışan bir fonksiyondur. Başlangıç ayarlarını yapmak için kullanılır, örneğin pin modlarını belirlemek.loop()
: Arduino kartınız çalıştığı sürece sürekli olarak tekrar eden işlemleri barındırır. Sensör okumaları, LED yanıp sönme gibi tekrar eden işlemler burada gerçekleştirilir.
Arduino’da değişkenler, verileri saklamak için kullanılır. Örneğin:
int ledPin = 13; // LED'in bağlı olduğu pin numarası
Bu kodda, ledPin değişkeni 13 değerini saklar ve bu değer, LED’in hangi pine bağlı olduğunu belirtir.
Koşullu ifadeler, belirli bir koşulun doğru veya yanlış olduğunu kontrol eder. Örneğin:
if (sıcaklık > 30) {
digitalWrite(ledPin, HIGH); // LED'i yak
}
Bu örnekte, sıcaklık 30°C’den büyükse LED yanar. Döngüler, belirli işlemleri sürekli tekrar etmek için kullanılır. Arduino’da en yaygın döngü loop()
fonksiyonudur. Örneğin:
for (int i = 0; i < 10; i++) {
digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
}
Bu kod, LED’i 10 kez yanıp söndürecektir. Serial Monitor, Arduino'nun seri port üzerinden veri alışverişini görüntülemenizi sağlar. Sensör verilerini izlemek veya hata ayıklamak için kullanılır. Örnek:
Serial.begin(9600); // Seri haberleşmeyi başlat
Serial.println("Merhaba Arduino!");
Bu kod, Serial Monitor'de "Merhaba Arduino!" yazısını görüntüler. Fonksiyonlar, kodunuzu daha düzenli ve modüler hale getirir. Örneğin:
void ledYak() {
digitalWrite(ledPin, HIGH); // LED'i yak
}
Bu fonksiyon, LED'i yakma işlemini gerçekleştirir ve istediğiniz zaman çağırabilirsiniz. for
, while
).if
, else
).Arduino IDE (Integrated Development Environment), Arduino programlarını yazmak, derlemek ve karta yüklemek için kullanılan bir yazılımdır.
pinMode()
fonksiyonu, bir pinin giriş mi yoksa çıkış mı olacağını belirlemek için kullanılır. Örnek:
pinMode(13, OUTPUT); // 13. pini çıkış olarak ayarla
Bir LED'i yakmak için, LED'in bir bacağını Arduino’nun dijital pinine, diğer bacağını ise GND’ye bağlayın. Örnek kod:
pinMode(13, OUTPUT); // LED pinini çıkış yap
digitalWrite(13, HIGH); // LED'i yak
Bu Gönderiye Yorum Yapılmamış