Bu konu başlığı altında Arduino komutlarından sadece belli başlı olanlar ele alınacaktır diğer komutlar ise ilerleyen konularda uygulamalar ile birlikte açıklanacaktır.
Arduino Dijital Giriş/Çıkış Komutları
pinMode(pin, mode)
Dijital giriş/çıkış pinlerinden herhangi birini giriş ya da çıkış olarak tanımlamak için kullanılır. Pin denilen alana dijital pinlerden hangisini kullanacaksak onun numarası yazılır. Mode ile ifade edilen alana ise giriş mi? Çıkış mı? Olacağı yazılır. Ancak İngilizce olarak yazılmalıdır. Giriş ise INPUT, çıkış ise OUTPUT yazılır.
Kullanım şekli:
pinMode(13, OUTPUT);
Açıklama:
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:
digitalRead(pin)
dijital okuma anlamına gelen komut belirtilen pinden dijital olarak okuma işlemi yapar.
Kullanım şekli:
digitalRead(5);
Açıklama:
Arduino Gecikme Komutları
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:
delayMicroseconds(süre)
bekleme komutlarından diğeri ise delaymikroseconds komutudur. Bu komutun delay komutundan farkı süre kısmına yazılan sayı mikro saniye cinsinden olmalıdır.
Kullanımı:
delayMicroseconds(1000);
Açıklama:
Arduino Dijital Giriş/Çıkış Komutları
pinMode(pin, mode)
Dijital giriş/çıkış pinlerinden herhangi birini giriş ya da çıkış olarak tanımlamak için kullanılır. Pin denilen alana dijital pinlerden hangisini kullanacaksak onun numarası yazılır. Mode ile ifade edilen alana ise giriş mi? Çıkış mı? Olacağı yazılır. Ancak İngilizce olarak yazılmalıdır. Giriş ise INPUT, çıkış ise OUTPUT yazılır.
Kullanım şekli:
pinMode(13, OUTPUT);
Açıklama:
- pinMode(pin, mode) komutu yukarıda anlatılan program bloklarından Void setup(){……}kısmında süslü parantezlerin arasında kullanılmalıdır. Çünkü Arduino’nun kurulumuna ait bir komuttur.
- Pin tanımlama alanına dijital pinlerden herhangi biri yazılabilir. Örneğin Arduino Uno için; 0’dan 13’e kadar 14 adet dijital giriş/çıkış olarak kullanılabilen pinler mevcuttur. Bunlardan herhangi biri yazılabilir.
- Pin numaraları rakam olarak yazılabileceği gibi, bu sayılara bir isim verilip, pin yerine o isim de kullanılabilir. (pin numaralarına isim atama, ilgili komutlar anlatılırken bahsedilecektir.)
- Mode ile belirtilen alana output yazıldığı için bu örnekte 13 numaralı pin, çıkış olarak kullanılacaktır.
- Komutun sonunda ( noktalı virgül kullanılmalıdır.
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 belirlenir. İkincisi 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.
- Örneğin 13. Pine led bağlı olduğunu düşünürsek ve yukarıda verilen şekilde komut çalıştırılırsa; 13. Pine bağlı olan led 1 olacaktır ve ışık verecektir.
- digitalWrite(13,0); şeklinde yazılırsa yanan led sönecektir.
- Bu komut Loop() bloğunda yer almalıdır. Sonunda da ( noktalı virgül kullanılmalıdır.
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ın da giriş olarak tanımlanan pinden okuma işlemi yapabilir.
- Belirlenen pine gelen dijital 1 veya 0 bilgisini algılayabilir.
Arduino Gecikme Komutları
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ı mili saniye cinsinden olmalıdır.
- 1000 mili saniye 1 saniyeye eşittir.
- Loop() bloğunda kullanılır ve sonunda noktalı virgül olmalıdır.
delayMicroseconds(süre)
bekleme komutlarından diğeri ise delaymikroseconds komutudur. Bu komutun delay komutundan farkı süre kısmına yazılan sayı mikro saniye cinsinden olmalıdır.
Kullanımı:
delayMicroseconds(1000);
Açıklama:
- Mikro saniye olarak süre belirtilmeli.
- 000.000 mikro saniye 1 saniyeye eşittir.
- Loop() bloğu içinde kullanılmalı sonunda noktalı virgül bulunmalı.