Arduino

Arduino Ders 1: Temel Arduino Fonksiyonları

temel arduino fonksiyonları

Yeni bir yazı dizisi ile karşınızdayım. Bu yazı serimizde Arduino’yu yakından tanımaya çalışacağız. ilk dersimiz  olan Temel Arduino Fonksiyonları ile başlayalım.

Daha önce Arduino hakkında yazılar yazmış, projelere değinmiştik. Arduinoyu kodlarken bazı temel fonksiyonlar kullanıyorduk ancak elektroniğin temelini bilmeyenlerin zorlandığını  gördüm. Gelin beraber bu temel fonksiyonları irdeleyelim.

 #include Fonksiyonu

Hazır kütüphaneleri projemize dahil etmek için kullanılan fonksiyondur. Kütüphane ekleme ile ilgili yazımızda detaylara bakabilirsiniz. Arduino Kütüphane Ekleme

#include fonksiyonu

Void Setup Fonksiyonu

En temel fonksiyonlardan biri setup fonksiyonudur. Bu fonksiyon olmadan arduino ide yazılan kodları derleyemez. Setup fonksiyonunda giriş/çıkış pinlerini, tanımlamalarımızı yaparız. Setup fonksiyonu arduinoya güç verildikten sonra sadece 1 defa çalışan fonksiyondur. Bundan dolayı kodlarımızı buna göre düzenlememiz gerekir. Syntaks yapısında void setup (){ // buraya kodlar gelecekşeklinde kullanılır.

temel arduino fonksiyonları

Void Loop Fonksiyonu

Setup fonksiyonundan sonra çalışan diğer temel fonksiyondur. Loop fonksiyonu içine yazılan kodlar arduinoda güç olduğu sürece çalışır. Fonksiyondaki son kod satırı işlendikten sonra tekrar fonksiyondaki ilk kod satırı ile işleme devam edilir. Syntaks yapısı void loop (){ // buraya kodlar gelecek} şeklinde kullanılır.

arduino temel fonksiyonları

PinMode Fonksiyonu

Setup fonksiyonu içerisinde pinlerin giriş/ çıkış pini olarak ayarlanması gerekmektedir. Bu işi yapan fonksiyon pinMode fonksiyonudur. Fonksiyonda 2 parametre yer alır. ilk parametre pin, ikinci parametre bunun değeridir. Bu değer INPUT yada OUTPUT tur.
Örnek kullanımı şu şekildedir: pinMode(13, OUTPUT); pinMode(2, INPUT);

arduino pinmode fonksiyonu

digitalWrite Fonksiyonu

Arduino üzerinde yer alan digital pinlere yazmak için kullanılan fonksiyondur. Digitale yazılabilecek iki değer vardır. Bu değerler “LOW” ve “HIGH” dır. LOW  0 ‘ı temsil ederken HIGH 1’i temsil etmektedir. HIGH değeri yazıldığında ilgili pine 5 volt verilirken LOW değeri yazıldığında ise 0 volt gönderilmiş olur. DigitalWrite fonksiyonunda 2 adet parametremiz vardır. Bunlardan ilki digital pin diğeri ise bu pinin değeridir. Birinci ve ikinci parametre arasına virgül konulur. DigitalWrite fonksiyonunun kullanımı şu şekildedir:

digitalWrite(13, LOW);  digitalWrite(2, HIGH);

arduino digitalwrite fonksiyonu

digitalRead Fonksiyonu

Digital pinlerde 2 adet değer olduğunu öğrenmiştik. Digital pinden değer okumak için öncelikle bu pinin modunu  INPUT olarak tanımlamak gerektiğini unutmayalım. Digital pinden değer okuma işlemi için digitalRead fonksiyonunu kullanırken hangi pinden okuma yapılacağını belirtmemiz gerekir. Örnek kullanım şu şekildedir:

digitalRead(3); // 3 Nolu Pindeki değeri okuyup işlem yaptıracağız.

arduino digitalRead fonksiyonu

AnalogWrite Fonksiyonu

Daha önce arduinoda digital pinlerde 2 değerin olduğunu öğrenmiştik. DigitalWrite fonksiyonu ile digital pine ya 0 volt gönderiyor idik ya 5 volt gönderiyor idik. Bu iki değer arasında bir değer göndermek istediğimizde gönderemiyorduk ancak analogWrite fonksiyonu ile 0-5 volt arasını 256 eşit parçaya bölerek  digital pine farklı değerlerde güç gönderebiliriz. AnalogWrite Fonksiyonu için PWM pinlerini kullanmamız gerektiğini unutmayın. Arduino uno PWM pinleri : 3, 5, 6, 9, 10, 11

Örnek kullanım şu şekildedir: analogWrite(3, 127); // 3 Nolu pine yaklaşık 2.5 volt gönderir.

analogWrite(6, 255); // 6 Nolu pine 5 volt  gönderir.

analogWrite(9, 0); // 9 Nolu pine 0 volt gönderir.

Arduino AnalogWrite Fonksiyonu

AnalogRead Fonksiyonu

Analog pinlerden değer okumak için kullanılan fonksiyondur. Analogdan okuna değer 0-1023 arasındadır. Analog pinden değer okuyup okunan değere göre işlem yaptırabiliriz.  Artık ne işlem yaptıracağınız size kalmış. Syntax yapısında değerini okuyacağımız pini belirtmemiz gerekiyor.

Örnek kullanımı şu şekildedir: int deger = analogRead(A0);

Arduino AnalogRead Fonksiyonu

Delay Fonksiyonu

Arduinoda kodlar sırası ile işlenir. Bir satırı işlendikten sonra diğer kod satırına geçmesi için beklemesini istersek delay fonksiyonunu kullanırız. Delay fonksiyonunda zaman mili saniye cinsinde yazılır dolayısı ile 2 saniye yazmak istersek 2000 yazmamız gerekir. Örnek kullanım şu şekildedir: delay(2000);

Map Fonksiyonu

Map fonksiyonu, bir aralıktaki değerleri başka bir aralığa çevirir. Örneğin potansiyometreden gelen değere  göre servo motora açı vermek istersek kullanabilir. Not: Servo motor 0-180 derece arasında gidip gelebilir.

deger = analogRead(A0); // A0 pininden değeri okuyup değer değişkenine atıyoruz.
deger = map(deger, 0,1023, 0, 180); // deger değişkenin değer aralığı 0-0123 arasından 0-180 arasında olacak şekilde değiştirilmiş olur.
servo.write(deger); // servoya deger değişkenini yazdırmış oluyoruz.

Arduino map fonksiyonu

Bu dersimizde temel arduino fonksiyonları hakkında bilgi sahibi olduk. Bir sonraki derste görüşmek üzere… Aklınıza takılan şeyleri yorum olarak yazın cevaplayalım.

2 Comments

2 Comments

  1. mehmet

    9 Eylül 2018 at 20:01

    yaa baskan bu son fotodaki kodda void setup icine pinMode(A0,İNPUT) yazman gerekmio mu

Yorum Yap

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Most Popular

Yukarı Çık