ARDUINO DİJİTAL PİN KONTROLÜ
pinMode(); Komutu Kullanılacak olan pinlerin, Giriş yada çıkış olarak tanımlanmasını sağlar. Örnekler: pinMode(13,OUTPUT); => 13 Nolu pin Çıkış olarak tanımlandı. pinMode(10,INPUT); => 10 Nolu pin Giriş olarak tanımlandı.
pinMode(); Komutu Eğer bir pinden LED, röle motor gibi bir çıkış elemanı kontrol edilecekse o pin ÇIKIŞ olarak tanımlanmalıdır. pinMode(x,OUTPUT); Buton veya sensör gibi bir giriş elemanı kontrol edilecekse, o pin GİRİŞ olarak tanımlanmalıdır. pinMode(x,INPUT); x= Pin numarası
digitalWrite(); Komutu Çıkış olarak tanımlanan pinlerden, Lojik1 veya Lojik0 çıkışı verilmesini sağlar. digitalWrite(7,HIGH); => 7 nolu pinden 5V çıkış verildi ! (Lojik-1) digitalWrite(9, LOW); => 9 nolu pinden 0V çıkış verildi ! (Lojik-0)
delay(); Komutu Parantez içerisinde belirtilen süre kadar bekleme yapılmasını sağlar. Komutlar arasında bekleme yapmak için kullanılır. 1 saniye için 1000 yazılır. Örnek: 5 saniye için 5000 yazılır. 7,5 saniye için 7500 yazılır.
delay(); Komutu delay(1000); => 1 saniye bekler. delay(500); => 0.5 (Yarım) Saniye bekler. delay(5000); => 5 saniye bekler. Delay(4500); => 4.5 saniye bekler.
Aksi takdirde derleme olmaz. Arduino komutları yazılırken, büyük/küçük harfe dikkat edilmeli, komutlar doğru şekilde yazılmalıdır. Aksi takdirde derleme olmaz.
ARDUINO PROGRAM YAPISI void setup() { Giriş/Çıkış Tanımlama ayarları Diğer ayarlar } void loop() { İşlem komutları }
ÖRNEK PROGRAM void setup() { pinMode(13,OUTPUT); } void loop() { digitalWrite(13,HIGH); delay(1000); digitalWrite(13,LOW); delay(1000); }
ÖRNEK PROGRAM Örnek programda void setup() bölümünde 13 nolu pin çıkış olarak tanımlanmıştır. loop bölümünde, 13 nolu pin 1 saniye aralıkla; Lojik-1 ve Lojik-0 olmuştur. (Led yanıp sönmektedir.)
ARDUINONUN PROGRAMLANMASI USB Kablosunu Arduino ve bilgisayara bağlayınız. 2) Masaüstünden Arduino Programını açınız.
3) Tools menüsüne girerek, Board sekmesi altından programlayacağınız Arduino’yu seçiniz.
4) Upload tuşuna basınız. 3) Programınızı yazınız.(Verilen örnek program) 4) Upload tuşuna basınız. 5) Uno üzerinde bir adet LED 13 nolu pine bağlıdır. LED’i gözlemleyiniz.
Uygulama – 1 7 nolu pine bağlı LED 1 saniye ışık verip sönecek, daha sonra 10 nolu pine bağlı LED 3 saniye ışık verip sönecektir.
Uygulama – 1 void setup() { pinMode(7,OUTPUT); pinMode(10,OUTPUT); } void loop() { digitalWrite(7,HIGH); delay(1000); digitalWrite(7,LOW); digitalWrite(10,HIGH); delay(3000); digitalWrite(10,LOW); }
Uygulama – 2 3 nolu pine bağlı LED ile 7 nolu pine bağlı LED aynı anda ışık vererek 1 saniye sonra sönecek; Daha sonra 9 nolu pine bağlı LED ile 11 nolu pine bağlı LED aynı anda ışık vererek 4 saniye sonra sönecektir. Gerekli devreyi kurunuz, programı yazınız.
Uygulama – 3 8 adet LED bağlayarak, karaşimşek şeklinde ışık vermesini sağlayan devreyi kurunuz ve programı yazınız. (Pinleri kendiniz belirleyiniz.) (Bekleme süreleri 200ms ile 1 sn arasında olabilir.)