ARDUİNO Arduino Eğitimleri Bölüm 4 Programlama Dili Temelleri - II 21.09.2018 ARDUİNO http://www.flickr.com/photos/collinmel/2317520331/ Arduino Eğitimleri Bölüm 4 Programlama Dili Temelleri - II Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili - II Neler Göreceğiz? 21.09.2018 Arduino Dili - II Neler Göreceğiz? Fonksiyonlar Matematik İşlemler Gecikme / Zaman Fonksiyonları Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar ƒ(x) Çıktılar Fonksiyon Girişler Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Arduino programlarımızı tek bir fonksiyon (loop()) içerisinde yazabileceğimiz gibi onları küçük birimlere de ayırabiliriz. Daha önce kullandığımız Delay() fonksiyonu parametre alan ama değer döndürmeyen bir fonksiyondur. Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar loop() Fonksiyon_A() Fonksiyon_B() Fonksiyon_C() Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Fonksiyonlar parametre almaları ve değer döndürmeleri zorunlu değildir. Değer döndürmeyen fonksiyonların dönüş değer tipi “void” dir. Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Fonksiyonlar parametre alıp almadıklarına veya değer döndürüp döndürmemelerine göre gruplanabilir: Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Parametre almayan ve dönüş değeri olmayan Parametre alan ve dönüş değeri olmayan Parametre almayan ve dönüş değeri olan Parametre alan ve dönüş değeri olan Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Dönüş değeri tipi int ornekBirFonksiyon(int sayi1, int sayi2) { /* Parametre olarak verilen iki tam sayının toplamını döndüren fonksiyon */ int sonuc; sonuc = sayi1 + sayi2; return sonuc; } 2. Parametre 1. Parametre Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Dönüş değeri yok (void) void ArduinoYazdir() { /* Seri çıkış üzerinden “Arduino” yazdıran fonksiyon */ Serial.println(“Arduino”); } Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Fonksiyonları tekrar edilen işlemler için kullanabiliriz. Fonksiyonlara verdiğimiz girişlere “parametre” denilir. Fonksiyonlar tanımlanırken hangi tip parametre alacakları belirtilir. Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri Fonksiyon Çağırma /* Seri haberleşme üzerinden “Arduino” yazdıran fonksiyon saniyede 1 çağırılıyor. */ void setup() { Serial.begin(9600); } void loop() { ArduinoYazdir(); // Fonksiyon çağrısı delay(1000); // Bir saniye bekle Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Fonksiyonlara parametre iletmenin iki yolu vardır: Değerle çağırma ve Referansla çağırma Değerle çağırmada fonksiyona iletilen parametrelerle yapılan işlemler sonucu verilen parametrelerin değerlerinde değişim olmaz. Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlarda Değerle Çağırma 21.09.2018 Arduino Dili Fonksiyonlarda Değerle Çağırma Dönüş değeri tipi int ornekBirFonksiyon(int sayi1, int sayi2) { /* Parametre olarak verilen iki tam sayının toplamını döndüren fonksiyon */ int sonuc; sonuc = sayi1 + sayi2; return sonuc; } 2. Parametre 1. Parametre Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlar 21.09.2018 Arduino Dili Fonksiyonlar Referansla çağırmada fonksiyona iletilen parametrelerin bellek adresleri(referans) fonksiyona iletilir ve parametrelerin orijinal değerleri üzerinde işlem yapılır. Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Fonksiyonlarda Referansla Çağırma 21.09.2018 Arduino Dili Fonksiyonlarda Referansla Çağırma referans Dönüş değeri tipi void void degerleriTopla(int sayi1, int sayi2, int &toplam) { /* Parametre olarak verilen iki tam sayının toplamını döndüren fonksiyon */ toplam = sayi1 + sayi2; } 1. Parametre Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Gecikme ve Zaman Fonksiyonları 21.09.2018 Arduino Dili Gecikme ve Zaman Fonksiyonları Gecikme fonksiyonu delay()’i daha önce görmüştük. delay(ms_gecikme) ms gecikme delayMicroseconds(us_gecikme) us gecikme gibi Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Gecikme ve Zaman Fonksiyonları 21.09.2018 Arduino Dili Gecikme ve Zaman Fonksiyonları millis() fonksiyonu Arduino’nun çalışmasından itibaren geçen süreyi ms cinsinden döndürür. Ortalama 50 günde bir sıfırlanır. Dönüş değeri yüksek bir değer olabileceğinden “unsigned long” tipi kullanılmalıdır. Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Matematik Fonksiyonlar 21.09.2018 Arduino Dili Matematik Fonksiyonlar Temel matematik işlemleri matematik operatörleriyle gerçekleştirebiliyoruz. Karekök alma, trigonometrik hesaplamalar gibi işlemler için matematik kütüphanesi fonksiyonlarını kullanabiliriz. Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Matematik Operatörler 21.09.2018 Arduino Dili Matematik Operatörler Operatör İşlem + TOPLAMA - ÇIKARMA * ÇARPMA / BÖLME % KALAN = ATAMA Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Matematik Fonksiyonlar 21.09.2018 Arduino Dili Matematik Fonksiyonlar Fonksiyon Parametre İşlem Pow(x,n) x: Sayı n: Üs değeri Üs alma Sqrt(x) x: sayi Karekök alma Abs(x) Mutlak Değer sin(x) x: açı (radyan) Sinüs cos(x) Kosinüs tan(x) Tanjant Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri
Arduino Dili Matematik Fonksiyonlar 21.09.2018 Arduino Dili Matematik Fonksiyonlar Fonksiyon Parametre Sonuç a = min(x,y) x: Sayi-1 y: Sayi-2 İki sayının en küçüğü a = max(x,y) İki sayının en büyüğü a = constrain(x,min,max) x: sayı İki değer arasına sınırlama a = floor(x) x: ondalık sayı En küçük tam sayıya yuvarlama a = ceil(x) En büyük tam sayıya yuvarlama Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21.09.2018 Coşkun Taşdemir - Arduino Eğitimleri