Arduino Eğitim Kiti – Tüm Yıl İçin Arduino Müfredatı: Ders 11 Arduino Programı Arayüzü ve Temel Kodlar için isterseniz sunu şeklinde alt taraftaki kutucuğu büyüterek takip edebilir, isterseniz de tüm sunu sayfalarının makale haline dönüştürülmüş versiyonu takip edebilirsiniz. İçerikler büyük oranda aynıdır. Sınıf ortamında kolaylık olması açısından sunu şeklinde de sunulmuştur.
Ders İçeriği:
Arduino Programı Arayüzü ve Temel Kodlar.
Ders Kazanımları:
- Arduino programını bilgisayarına başarılı bir şekilde kurar.
- Programdaki sekmelerin içerikleri konusunda fikir yürütür.
- Program hatalarının nerelerden kontrol edildiğini ve programın Arduino kartına nereden yüklendiğini açıklar.
Arduino Nasıl Kurulur?
- İlk olarak https://www.arduino.cc sitesine ulaşılır.
- Bir sonraki aşamada “Download” sekmesinden indirilecek dosya seçilir.(Hangi İşletim sistemini kullanıyorsanız onu seçmeye özen gösteriniz.)
- Sonrasında “Just Download” butonuna tıklanır.
- Next butonu ile devam edilir.
- Bir sonraki aşamada masaüstüne gelen Arduino ikonuna tıklayarak programı çalıştırılabilir.
Arduino IDE Ekranı:
- Eğer karşınıza bu ekran geldiyse Arduino programı arayüzü başarılı bir şekilde kurulmuştur.
- Programlarımızı bu ekran üzerinden yazacağız.
- Şimdi ekranda görünen sekmelere göz atalım.
“File” Menüsü : Hemen tüm paket programlarda bulunan en temel menülerdendir. İçerisinde “Yeni“, “Dosya“, “Aç“, “Kapat“, “Kaydet“, “Farklı Kaydet“, “Kapat“, “Yükle“, “Programlayıcı İle Yükle“, “Sayfa Ayarla“, “Yazdır“, “Tercihler” ve “Programı kapat” işlem sekmelerinin bulunduğu menüdür. En çok kullanılan sekmelerinden biri de “Examples” sekmesidir. Bu sekme bize Arduino IDE içerisinde bulunan örnek uygulamalara erişmemizi sağlar. Buradaki örnekler Arduino firmasının yaptığı orijinal örneklerdir.
“Edit” Menüsü : Program çalışırken yapılan çalışma içerisindeki düzenlemeleri yapmak için kullanılan menüdür. “Kopyala“, “Kes“, “Yapıştır“, “Geri Al” gibi her paket programda bulunan sekmeler bulunur.
“Sketch “Menüsü : Arduino Ide programına has bir menüdür. Sekmeleri; “Virify/Compile“=Doğrula/Dönüştür “Show Sketch Folder” = Sketch dosyasını barındıran klasörü göster. “Add File, Import Library ” = Sketch dosyasına eklenecek program parçasının eklenmesini sağlar.
“Tools Menüsü” : Tools bilindiği gibi aletler anlamına gelmektedir. Donanımsal olarak bu menüden faydalanırız, Arduino Ide programının belki de en çok kullanılan menüsüdür. Bilgisayarınıza taktığımız Arduino’yu veya bağlantı yaptığımız Com Portu (USB Bağlantı noktası) bu menüden tanımlarız. Örneğin “Board” sekmesinden Arduino Uno’yu ve “Serial Port” sekmesinden bağlı olduğu portu seçmezsek Arduino içerisine program gönderemeyiz.
“Help Menüsü” : Help menüsü standart diğer paket programlarda da bulunan menülerdendir. Arduino Ide programı içerisinde oluşabilecek aksaklıklar ve hataları çözebilmek için başvurulan “Yardım” menüsüdür.
Butonlar:
Oluşturulan kodda mantıksal veya yapısal hataları bulmaya yarar.
Bu buton oluşturulmuş olan Sketch’in derlenerek USB üzerinden Arduino’ya göndermek için kullanılır.
Bu buton halihazırda açık olan Skecth haricinde yeni bir sketch sayfası açmaya yarar.
Hali hazırda yapılmış olan Skecth dosyalarını açmaya yarar.
Üzerinde çalıştığımız sketch dosyasını kaydetmemize yarar.
Bu buton serial monitör penceresini açmaya yarar.
Kodlarımızı yazdığımız, programlarımızı tasarladığımız alan.
Programımızdaki hataları, yüklenme durumunu görebileceğimiz alan.
Arduino’ da Kullanılan Temel Kodlar:
Arduino Dijital Giriş / Çıkış Komutları:
1) pinMode(pin, mode)
- Dijital giriş/çıkış pinlerinden herhangi birini giriş ya da çıkış olarak tanımlamak için kullanılır.
- Pin alanına dijital pinlerden hangisini kullanacaksak onun numarası yazılır.
- “mode” ile ifade edilen alana ise veri girişi mi veri çıkışı mı olacağı yazılır.
- Giriş ise “INPUT”, çıkış ise “OUTPUT” yazılır.
Örneğin: Nem sensörü gibi dışarıdan veri algılanacak bir malzeme kullanılıyorsa INPUT, LED gibi sinyal verilecek bir malzeme kullanılıyorsa OUTPUT yazılır.
Kullanım şekli: pinMode(13, OUTPUT);
2) digitalWrite(pin, value)
Dijital yazma anlamına gelen bu komut, çıkış olarak belirlenen pine değer aktarmak (yazmak) için kullanılır.
Kullanım şekli: digitalWrite(13, 1);
Açıklama:
- İki farklı argüman vardır. İlki dijital yazma işleminin yapılacağı pin belirlenmesi, ikincisi ise yazılacak değerin belirlenmesi. Yazılacak değer 1 veya 0 olabilir.
- Yazılacak değer 1 veya 0 olarak yazılabileceği gibi 1 = HIGH, 0 = LOW olacak biçimde HIGH veya LOW da yazılabilir.
- pinMode komutu ile hangi pinler dijital çıkış olarak tanımlandı ise o pinlere yazma işlemi yapılabilir. Giriş olarak tanımlanan bir pine yazma işlemi yapılamaz.
3) digitalRead(pin)
Dijital okuma anlamına gelen komut belirtilen pinden dijital olarak okuma işlemi yapar.
Kullanım şekli: digitalRead(5);
Açıklama:
- Read okuma işlemi olduğundan bu dışarıdan gelen bilgiyi okumak biçiminde olmalıdır.
- Burada dikkat edilecek husus şudur; eğer okunan değer 1 ise “digitalRead()” komutunun geri getirdiği değer 1 olur. Yani okuduğu değer 1 ise digitalRead(5) = 1 olur, okuduğu değer 0 ise digitalRead(5) = 0 olur.
- Dijital okuma işlemi pinMode() komutu ile Setup kısmında giriş olarak tanımlanan pinden okuma işlemi yapabilir.
Arduino Analog Komutları:
1) analogRead();
Arduino Uno’da analog pinlerin tamamı analog giriş olarak kullanılabilir. “analogRead” komutu analog pine dışarıdan gelecek 0-5 volt arasında analog değerleri okumak için kullanılır.
int analogdeger=0; //Analog olarak okunan değerin kaydedileceği değişkenin 0
//degeri alması
void setup()
{
pinMode(analog giriş , INPUT); //analog değerin okunacağı bacak numarası
}
void loop()
{
analogdeger = analogRead(analog giriş); //analog değer okunup değişken alanına
//aktarılır
Serial.println(analogdeger); //serial ekrana okunan değerin yazılması
}
Arduino Gecikme Komutları:
1) delay(süre)
Delay, gecikme ya da bekleme anlamlarında kullanılır. Bu komut çalıştırıldığı sırada mikrodenetleyici veya Arduino hiçbir şey yapmadan belirttiğimiz süre kadar bekler.
Kullanım şekli: delay(1000);
Açıklama:
- Parantez içine yazılacak sayı milisaniye cinsinden olmalıdır.
- 1000 milisaniye 1 saniyeye eşittir.
2) delayMicroseconds(süre)
Bekleme komutlarından diğeri ise delaymicroseconds() komutudur. Bu komutun delay komutundan farkı süre kısmına yazılan sayı mikrosaniye cinsinden olmalıdır.
Kullanımı: delayMicroseconds(1000);
Açıklama:
- Mikro saniye olarak süre belirtilmeli.
- 1.000.000 mikro saniye 1 saniyeye eşittir.