Arduino zaman fonksiyonları- delay, delayMicroseconds, millis, micros - 1.bölüm - Ders 25 -

Поділитися
Вставка
  • Опубліковано 12 вер 2024
  • Arduino içerisinde süreli işler için; delay, delaymicroseconds, millis ve micros komutları ile kontrol sağlanmaktadır. Bir işlem yaparken arada gecen zamanı yada geçmesini istediğimiz zamanı bu komutlar ile sağlarız. Zaman komutlarıyla bir ledin yanması, bir fanın çalışma süresi, bir sensörün ölçüm aralığı gibi bir çok donanımı kontrol edebiliriz. Delay ve delaymicroseconds arduino içerisinde kullanıldığı satırda algoritmayı bekletirken millis ve micros komutları algoritmayı bekletmeden işlemler yapmaktadır. Bu videomuzda zaman fonksiyonlarının genel ve kullanım mantığını örnekle anlatmaya çalıştım, videoyu izleyerek detayları hakkında bilgi sahibi olabilirsiniz.
    #delay #delaymicroseconds #millis
    Dersimizde kullandığımız malzemeler ve kodlar:
    1 Adet Arduino uno r3
    3 Adet Led
    3 Adet 330R direnç
    1 adet bread board ve bağlantı kabloları
    Kuracağınız algoritma mantığına uygun donanımlar seçebilirsiniz.
    Video içerisindeki kodlar : www.teknikerle...
    Elektronik ürünleri satın alabileceğiniz
    www.famerelektr... doğru adres
    Ayrıca;
    ► Sıfırdan Elektronik Öğrenmek isteyenler için: bit.ly/3rghV8b
    ► Sıfırdan Fotoğrafçılık Öğrenmek isteyenler için: bit.ly/3vXctay
    ► Adobe After Effects Öğrenmek için : bit.ly/3Cj8GYU
    ► Sıfırdan Arduino Öğrenmek isteyenler için: bit.ly/3qzI3M1
    ► Yeni ders videoları için : bit.ly/3A066qa buraya tıklayarak abone olabilirsiniz!
    İyi Seyirler.
    Bu video hoşunuza gittiyse ve yeni ekleyeceğimiz videolar hakkında anında haberdar olmak için kanalımıza abone olmayı ve beğen butonuna tıklamayı unutmayınız.
    Fotoğraf işleme, Video İşleme ve Robotik Kodlama hakkında herşey bu kanalda.
    Fotoğrafta Kompozisyon ve Photoshop ile fotoğraf işleme.
    After effects ve Premierde Video kurgu ve düzenleme.
    Arduino ile Robotik Kodlama dersleri.
    Sayısal elektronik devreleri…

КОМЕНТАРІ • 24

  • @ahmetozdemir7173
    @ahmetozdemir7173 9 місяців тому +1

    Teşekkürler. Gerçekten çok anlaşılır bir şekilde anlattınız.

    •  9 місяців тому

      👋👋👋

  • @nihatdugmeli6127
    @nihatdugmeli6127 2 роки тому +1

    Teşekkürler bir noktadan sonra koptu kafam almadı ama mantığı anladım

    •  2 роки тому

      Başka bir zaman tekrar izleyin, bazen tek seferde anlaşılamıyor bazı konular.

  • @ozankavci
    @ozankavci 2 роки тому +1

    2. Videoyu merakla bekliyorum 🙏

    •  2 роки тому +1

      Her salı yeni video yayında inş.

  • @mirackorkmaz4767
    @mirackorkmaz4767 2 роки тому +1

    Harika bir bilgi. Elinize, ağzınıza sağlık.

    •  2 роки тому

      Teşekkür ederim

  • @vetkangalae7606
    @vetkangalae7606 Рік тому +1

    Elimde boyle bir kod var
    Birinci butonu kullanırken aynı anda ikinci kodu nasıl kullanabilirim tesekkurler
    int butonpin = A1;
    int butonpin2 = A2;
    int butonpin3 = A3;
    int role_1 = 12;
    int role_2 = 11;
    int butondurum = 0;
    int butondurum2 = 0;
    int butondurum3 = 0;
    void setup(){
    pinMode(butonpin, INPUT);
    pinMode(butonpin2, INPUT);
    pinMode(butonpin3, INPUT);
    pinMode(role_1, OUTPUT);
    pinMode(role_2, OUTPUT);
    }
    void loop(){
    butondurum = digitalRead(butonpin);
    butondurum2 = digitalRead(butonpin2);
    butondurum3 = digitalRead(butonpin3);
    digitalWrite(role_2,HIGH );
    if (butondurum == HIGH) {
    digitalWrite(role_2, LOW);
    delay(209);
    digitalWrite(role_1, LOW);
    delay(209);
    digitalWrite(role_1, HIGH);
    delay(409);
    digitalWrite(role_2, HIGH);
    delay(16000);
    }
    else {
    digitalWrite(role_1, HIGH),(role_2, HIGH);
    }
    if (butondurum2 == HIGH) {
    digitalWrite(role_2, LOW);
    delay(209);
    digitalWrite(role_1, LOW);
    delay(209);
    digitalWrite(role_1, HIGH);
    delay(409);
    digitalWrite(role_2, HIGH);
    delay(6500);
    }
    else {
    digitalWrite(role_1, HIGH),(role_2, HIGH);
    }
    if (butondurum3 == HIGH) {
    digitalWrite(role_2, LOW);
    delay(209);
    digitalWrite(role_1, LOW);
    delay(209);
    digitalWrite(role_1, HIGH);
    delay(409);
    digitalWrite(role_2, HIGH);
    delay(4000);
    }
    else {
    digitalWrite(role_1, HIGH),(role_2, HIGH);
    }
    }

    •  Рік тому

      Video içinde delay yerine millis kullandık, bu yöntemle yapabilirsiniz.

  • @muratdumlutr
    @muratdumlutr Рік тому +1

    Hocam merhaba; Sizden bir ricada bulunmak istiyorum. Şu anda uğraştığım bir proje var elimde. Proje de millis komutunu kullanarak bir butona bastığımda sayacın başlamasını diğer butona yada aynı butona bastığımda sayacın durmasını yani pause konumuna geçmesini istiyorum. Yardımcı olabilirmisiniz küçük bir örnek yaparak? Şimdiden teşekkürler...

    •  Рік тому +1

      Merhaba, eğerki millis ile bir sayac yapacaksanız bildiğiniz gibi millis durdurulamaz. Şimdiki zaman ile millisi eşitleyip bundan sonraki geçen süre sayac olarak kullanılabilir. Tek buton ile istediğinizi yapabilirsiniz. Projenizde buton için bir sayac daha tanımlayıp buton değerine göre millis i yazdırabilirsiniz.

    • @muratdumlutr
      @muratdumlutr Рік тому +1

      Teşekkür ederim verdiğiniz bilgi için. Sanırım Timer1 kullanarak Stop, Start ile devam edeceğim projeye. Böylesi daha basit olacak.

  • @Mustafa_Dinc_
    @Mustafa_Dinc_ Рік тому +1

    Selamlar, interrupt oluştuğunda, proğram akışından ilgili vektör adresine geçmesi net kaç sarkıl sürer, Teşekkürler

    •  Рік тому +1

      Merhaba, bu web sitesinden istediğiniz hesaplamayı yapabilirsiniz.
      www.ee-diary.com/p/atmega-microcontroller-timercounter.html?m=1

    • @Mustafa_Dinc_
      @Mustafa_Dinc_ Рік тому +1

      @Çok teşekkür ederim. bunları zaten biliyorum. pic mikro denetleyicilerin donanım yapısını biliyorum, bazen senkronize ye ihtiyacım oluyor, çok sayıda çevre birimi her clock palsine göre görev dağılımı yapılıyor, Bu arada videolarınız yeni başlayanlar için ideal, tavsiyem ileri seviye teknik detaylar hakkında bilgi vermeniz, Çalışma hayatınızda başarılar dilerim

    •  Рік тому

      @@Mustafa_Dinc_ şuan için temelden başladık, ilerleyen günlerde yoğun mesaiye yenik düşmezsek yavaş yavaş üzerine koyarak orta ve ileri seviye eğitimlerle devam edeceğiz inş. Tabiki ileri seviye eğitimlere nekadar rabet olur kaç kişi istifade eder bakalım. Malum şimdilerde hazır, hızlı, en kısayoldan olana rabet edilir durumda. Sizin şuan merak edip araştırdığınız ve öğrendiğiniz konuyu öğrenmek isteyenler sayılır durumda. Zamanla diyelim….

  • @nihatdugmeli6127
    @nihatdugmeli6127 2 роки тому +1

    Millisi bölme işlemi ile sn çevirebilirmiyiz

    •  2 роки тому +1

      millisi saniye olarak doğrudan kullanabilirsiniz, ama mantıksal ifade olarak ta bölme yapılabilir.

  • @mustafag.2317
    @mustafag.2317 2 роки тому +1

    Merhabalar ben bir proje üzerinde çalışıyorum 3 farklı kod yazdım, müzik çalar rpmmetre ve nabız ölçer bu 3 kodu beraber birbirleri ile ilişkili çalıştırmam gerek nasıl yapabilirim yardımcı olabilir misiniz

    •  2 роки тому

      Merhaba, kodları tek bir proje dosyası içine taşıyın, donanım pin yapılandırmasını birbiri ile çakışmayacak şekilde yeniden tanımlayın. Proje kodlarınızı ve donanımlarınızın özelliklerini bilmeden daha fazla yardımım olamaz maalesef.

    • @mustafag.2317
      @mustafag.2317 2 роки тому +1

      @ anladım teşekkürler 👍 proje adı bisiklet sürücüleri için kalp atış hızı ve bisiklet hızına bağlı değişen müzikler , ben 3 aşamalı hepsini teker teker yaptım fakat bir dosyada hız ölçer ile müzik dosyasını birleştirdim hız ölçer çalıştı fakat müzik çalmıyor, delay millis çok fonksiyonlu çalışma bu tip yöntemleri nasıl kullanabilirim onu bilmiyorum vaktiniz var ise sizinle iletişime geçmek isterim

    •  2 роки тому

      @@mustafag.2317 projeniz güzel ve ilgi çekici, maalesef yoğun mesaim var,

    • @mustafag.2317
      @mustafag.2317 2 роки тому +1

      @ cevabınız için teşekkürler kolay gelsin 😊👍