SlideShare une entreprise Scribd logo
1  sur  22
ARDUİNO


                 http://www.flickr.com/photos/collinmel/2317520331/


                 Arduino Eğitimleri
                      Bölüm 3
           Programlama Dili Temelleri - II
13/11/12                Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                     1
Arduino Dili - II
                        Neler Göreceğiz?

    Fonksiyonlar
    Matematik İşlemler
    Gecikme / Zaman Fonksiyonları




13/11/12        Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                             2
Arduino Dili
                              Fonksiyonlar



                  ƒ(x)
     Girişler    Fonksiyon
                 Fonksiyon                    Çıktılar




13/11/12        Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                             3
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.




13/11/12           Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                4
Arduino Dili
                              Fonksiyonlar

                      loop()
                     loop()


Fonksiyon_A()
Fonksiyon_A()   Fonksiyon_B()
                Fonksiyon_B()           Fonksiyon_C()
                                        Fonksiyon_C()




13/11/12        Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                             5
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.




13/11/12         Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                              6
Arduino Dili
                              Fonksiyonlar



 Fonksiyonlar parametre alıp almadıklarına veya
değer döndürüp döndürmemelerine göre
gruplanabilir:




13/11/12        Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                             7
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


13/11/12         Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                              8
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;
}
                                               1. Parametre   2. Parametre



13/11/12            Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                 9
Arduino Dili
                                 Fonksiyonlar
                          Dönüş değeri yok (void)




   void ArduinoYazdir() {
     /* Seri çıkış üzerinden “Arduino” yazdıran
         fonksiyon
      */
     Serial.println(“Arduino”);
   }




13/11/12           Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                10
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.



13/11/12          Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                               11
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
     }




13/11/12            Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                 12
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.



13/11/12         Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                              13
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;
}
                                               1. Parametre   2. Parametre



13/11/12            Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                 14
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.




13/11/12           Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                15
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



13/11/12            Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                 16
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



13/11/12        Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                             17
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.


13/11/12          Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                               18
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.




13/11/12         Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                              19
Arduino Dili
                  Matematik Operatörler
           Operatör          İşlem
              +          TOPLAMA
              -          ÇIKARMA
              *          ÇARPMA
              /          BÖLME
              %          KALAN
              =          ATAMA
13/11/12     Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                          20
Arduino Dili
                    Matematik Fonksiyonlar
    Fonksiyon        Parametre                   İşlem
     Pow(x,n)   x: Sayı                Üs alma
                n: Üs değeri
      Sqrt(x)   x: sayi                Karekök alma
      Abs(x)    x: sayi                Mutlak Değer
       sin(x)   x: açı (radyan)        Sinüs
      cos(x)    x: açı (radyan)        Kosinüs
      tan(x)    x: açı (radyan)        Tanjant

13/11/12        Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                             21
Arduino Dili
                              Matematik Fonksiyonlar
              Fonksiyon             Parametre                  Sonuç
a = min(x,y)                   x: Sayi-1              İki sayının en küçüğü
                               y: Sayi-2
a = max(x,y)                   x: Sayi-1              İki sayının en büyüğü
                               y: Sayi-2
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)                    x: ondalık sayı        En büyük tam sayıya
                                                      yuvarlama


   13/11/12                Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri
                                                        22

Contenu connexe

En vedette

MIT Yaratıcı Kompütasyon Rehberi-pdf
MIT Yaratıcı Kompütasyon Rehberi-pdfMIT Yaratıcı Kompütasyon Rehberi-pdf
MIT Yaratıcı Kompütasyon Rehberi-pdfOgrenenOkullar
 
Arduino Türkiye - Arduino Hakkında
Arduino Türkiye - Arduino HakkındaArduino Türkiye - Arduino Hakkında
Arduino Türkiye - Arduino HakkındaCoşkun Taşdemir
 
Arduino ve Kablosuz Haberleşme Modülleri
Arduino ve Kablosuz Haberleşme ModülleriArduino ve Kablosuz Haberleşme Modülleri
Arduino ve Kablosuz Haberleşme ModülleriResul Rıza Dolaner
 
Nesne tabanlı programlama 1
Nesne tabanlı programlama 1Nesne tabanlı programlama 1
Nesne tabanlı programlama 1Erol Dizdar
 
Makeblock mDrawbot User Manual (from @Makeblock)
Makeblock mDrawbot User Manual (from @Makeblock)Makeblock mDrawbot User Manual (from @Makeblock)
Makeblock mDrawbot User Manual (from @Makeblock)Una Tao
 
PROGRAMLAMA OPERATÖRLER
PROGRAMLAMA OPERATÖRLERPROGRAMLAMA OPERATÖRLER
PROGRAMLAMA OPERATÖRLERCJFail
 
BilgeAdam Nesne Yönelimli Programlama
BilgeAdam Nesne Yönelimli ProgramlamaBilgeAdam Nesne Yönelimli Programlama
BilgeAdam Nesne Yönelimli ProgramlamaSinan Bozkuş
 
Nesne tabanlı programlamada sınıflar
Nesne tabanlı programlamada sınıflarNesne tabanlı programlamada sınıflar
Nesne tabanlı programlamada sınıflarErol Dizdar
 
m-kolej Sunusu | Bilişim Aktörleri
m-kolej Sunusu | Bilişim Aktörlerim-kolej Sunusu | Bilişim Aktörleri
m-kolej Sunusu | Bilişim AktörleriBilisim Aktorleri
 
Makeblock mBot User Manual (Engligh Version)
Makeblock mBot User Manual (Engligh Version)Makeblock mBot User Manual (Engligh Version)
Makeblock mBot User Manual (Engligh Version)Una Tao
 
Kids computer-programming
Kids computer-programmingKids computer-programming
Kids computer-programmingEdward Burns
 
egitim teknolojisi nedir?
egitim teknolojisi nedir?egitim teknolojisi nedir?
egitim teknolojisi nedir?thomas
 

En vedette (16)

MIT Yaratıcı Kompütasyon Rehberi-pdf
MIT Yaratıcı Kompütasyon Rehberi-pdfMIT Yaratıcı Kompütasyon Rehberi-pdf
MIT Yaratıcı Kompütasyon Rehberi-pdf
 
Scratch Kartları
Scratch KartlarıScratch Kartları
Scratch Kartları
 
Arduino Türkiye - Arduino Hakkında
Arduino Türkiye - Arduino HakkındaArduino Türkiye - Arduino Hakkında
Arduino Türkiye - Arduino Hakkında
 
Arduino ve Kablosuz Haberleşme Modülleri
Arduino ve Kablosuz Haberleşme ModülleriArduino ve Kablosuz Haberleşme Modülleri
Arduino ve Kablosuz Haberleşme Modülleri
 
Tools to teach kids to code
Tools to teach kids to codeTools to teach kids to code
Tools to teach kids to code
 
Kids Can Code
Kids Can CodeKids Can Code
Kids Can Code
 
Nesne tabanlı programlama 1
Nesne tabanlı programlama 1Nesne tabanlı programlama 1
Nesne tabanlı programlama 1
 
İnsansız Hava Araçları
İnsansız Hava Araçlarıİnsansız Hava Araçları
İnsansız Hava Araçları
 
Makeblock mDrawbot User Manual (from @Makeblock)
Makeblock mDrawbot User Manual (from @Makeblock)Makeblock mDrawbot User Manual (from @Makeblock)
Makeblock mDrawbot User Manual (from @Makeblock)
 
PROGRAMLAMA OPERATÖRLER
PROGRAMLAMA OPERATÖRLERPROGRAMLAMA OPERATÖRLER
PROGRAMLAMA OPERATÖRLER
 
BilgeAdam Nesne Yönelimli Programlama
BilgeAdam Nesne Yönelimli ProgramlamaBilgeAdam Nesne Yönelimli Programlama
BilgeAdam Nesne Yönelimli Programlama
 
Nesne tabanlı programlamada sınıflar
Nesne tabanlı programlamada sınıflarNesne tabanlı programlamada sınıflar
Nesne tabanlı programlamada sınıflar
 
m-kolej Sunusu | Bilişim Aktörleri
m-kolej Sunusu | Bilişim Aktörlerim-kolej Sunusu | Bilişim Aktörleri
m-kolej Sunusu | Bilişim Aktörleri
 
Makeblock mBot User Manual (Engligh Version)
Makeblock mBot User Manual (Engligh Version)Makeblock mBot User Manual (Engligh Version)
Makeblock mBot User Manual (Engligh Version)
 
Kids computer-programming
Kids computer-programmingKids computer-programming
Kids computer-programming
 
egitim teknolojisi nedir?
egitim teknolojisi nedir?egitim teknolojisi nedir?
egitim teknolojisi nedir?
 

Plus de Coşkun Taşdemir

Biz aslında çok şey yaptık
Biz aslında çok şey yaptıkBiz aslında çok şey yaptık
Biz aslında çok şey yaptıkCoşkun Taşdemir
 
Sensörler, Nesnelerin İnterneti, Veri ve Pazarlama
Sensörler, Nesnelerin İnterneti, Veri ve PazarlamaSensörler, Nesnelerin İnterneti, Veri ve Pazarlama
Sensörler, Nesnelerin İnterneti, Veri ve PazarlamaCoşkun Taşdemir
 
Gömülü Sistemler Eğitimi - Meşhur Yazılım Hataları
Gömülü Sistemler Eğitimi - Meşhur Yazılım HatalarıGömülü Sistemler Eğitimi - Meşhur Yazılım Hataları
Gömülü Sistemler Eğitimi - Meşhur Yazılım HatalarıCoşkun Taşdemir
 
AR-GE Inovasyon - Nişantaşı Üniversitesi Teknoloji Günleri
AR-GE Inovasyon - Nişantaşı Üniversitesi Teknoloji GünleriAR-GE Inovasyon - Nişantaşı Üniversitesi Teknoloji Günleri
AR-GE Inovasyon - Nişantaşı Üniversitesi Teknoloji GünleriCoşkun Taşdemir
 
Kabataş Erkek Lisesi - Cumhur Işın Fizik Laboratuarında Yapılan Çalışmalar
Kabataş Erkek Lisesi -  Cumhur Işın Fizik Laboratuarında Yapılan ÇalışmalarKabataş Erkek Lisesi -  Cumhur Işın Fizik Laboratuarında Yapılan Çalışmalar
Kabataş Erkek Lisesi - Cumhur Işın Fizik Laboratuarında Yapılan ÇalışmalarCoşkun Taşdemir
 
Elektrik - Elektronik Mühendisliği Öğrencisi arkadaşlara tavsiyelerim
Elektrik - Elektronik Mühendisliği Öğrencisi arkadaşlara tavsiyelerimElektrik - Elektronik Mühendisliği Öğrencisi arkadaşlara tavsiyelerim
Elektrik - Elektronik Mühendisliği Öğrencisi arkadaşlara tavsiyelerimCoşkun Taşdemir
 
Arduino türkiye tanıtımı
Arduino türkiye tanıtımıArduino türkiye tanıtımı
Arduino türkiye tanıtımıCoşkun Taşdemir
 

Plus de Coşkun Taşdemir (7)

Biz aslında çok şey yaptık
Biz aslında çok şey yaptıkBiz aslında çok şey yaptık
Biz aslında çok şey yaptık
 
Sensörler, Nesnelerin İnterneti, Veri ve Pazarlama
Sensörler, Nesnelerin İnterneti, Veri ve PazarlamaSensörler, Nesnelerin İnterneti, Veri ve Pazarlama
Sensörler, Nesnelerin İnterneti, Veri ve Pazarlama
 
Gömülü Sistemler Eğitimi - Meşhur Yazılım Hataları
Gömülü Sistemler Eğitimi - Meşhur Yazılım HatalarıGömülü Sistemler Eğitimi - Meşhur Yazılım Hataları
Gömülü Sistemler Eğitimi - Meşhur Yazılım Hataları
 
AR-GE Inovasyon - Nişantaşı Üniversitesi Teknoloji Günleri
AR-GE Inovasyon - Nişantaşı Üniversitesi Teknoloji GünleriAR-GE Inovasyon - Nişantaşı Üniversitesi Teknoloji Günleri
AR-GE Inovasyon - Nişantaşı Üniversitesi Teknoloji Günleri
 
Kabataş Erkek Lisesi - Cumhur Işın Fizik Laboratuarında Yapılan Çalışmalar
Kabataş Erkek Lisesi -  Cumhur Işın Fizik Laboratuarında Yapılan ÇalışmalarKabataş Erkek Lisesi -  Cumhur Işın Fizik Laboratuarında Yapılan Çalışmalar
Kabataş Erkek Lisesi - Cumhur Işın Fizik Laboratuarında Yapılan Çalışmalar
 
Elektrik - Elektronik Mühendisliği Öğrencisi arkadaşlara tavsiyelerim
Elektrik - Elektronik Mühendisliği Öğrencisi arkadaşlara tavsiyelerimElektrik - Elektronik Mühendisliği Öğrencisi arkadaşlara tavsiyelerim
Elektrik - Elektronik Mühendisliği Öğrencisi arkadaşlara tavsiyelerim
 
Arduino türkiye tanıtımı
Arduino türkiye tanıtımıArduino türkiye tanıtımı
Arduino türkiye tanıtımı
 

Arduino eğitimleri 4 - arduino programlama dili - 2

  • 1. ARDUİNO http://www.flickr.com/photos/collinmel/2317520331/ Arduino Eğitimleri Bölüm 3 Programlama Dili Temelleri - II 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 1
  • 2. Arduino Dili - II Neler Göreceğiz?  Fonksiyonlar  Matematik İşlemler  Gecikme / Zaman Fonksiyonları 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 2
  • 3. Arduino Dili Fonksiyonlar ƒ(x) Girişler Fonksiyon Fonksiyon Çıktılar 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 3
  • 4. 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. 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 4
  • 5. Arduino Dili Fonksiyonlar loop() loop() Fonksiyon_A() Fonksiyon_A() Fonksiyon_B() Fonksiyon_B() Fonksiyon_C() Fonksiyon_C() 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 5
  • 6. 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. 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 6
  • 7. Arduino Dili Fonksiyonlar  Fonksiyonlar parametre alıp almadıklarına veya değer döndürüp döndürmemelerine göre gruplanabilir: 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 7
  • 8. 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 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 8
  • 9. 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; } 1. Parametre 2. Parametre 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 9
  • 10. Arduino Dili Fonksiyonlar Dönüş değeri yok (void) void ArduinoYazdir() { /* Seri çıkış üzerinden “Arduino” yazdıran fonksiyon */ Serial.println(“Arduino”); } 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 10
  • 11. 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. 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 11
  • 12. 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 } 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 12
  • 13. 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. 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 13
  • 14. 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; } 1. Parametre 2. Parametre 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 14
  • 15. 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. 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 15
  • 16. 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 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 16
  • 17. 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 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 17
  • 18. 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. 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 18
  • 19. 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. 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 19
  • 20. Arduino Dili Matematik Operatörler Operatör İşlem + TOPLAMA - ÇIKARMA * ÇARPMA / BÖLME % KALAN = ATAMA 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 20
  • 21. Arduino Dili Matematik Fonksiyonlar Fonksiyon Parametre İşlem Pow(x,n) x: Sayı Üs alma n: Üs değeri Sqrt(x) x: sayi Karekök alma Abs(x) x: sayi Mutlak Değer sin(x) x: açı (radyan) Sinüs cos(x) x: açı (radyan) Kosinüs tan(x) x: açı (radyan) Tanjant 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 21
  • 22. Arduino Dili Matematik Fonksiyonlar Fonksiyon Parametre Sonuç a = min(x,y) x: Sayi-1 İki sayının en küçüğü y: Sayi-2 a = max(x,y) x: Sayi-1 İki sayının en büyüğü y: Sayi-2 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) x: ondalık sayı En büyük tam sayıya yuvarlama 13/11/12 Coşkun TAŞDEMİR - Çizgi-Tagem Arduino Eğitimleri 22