Arduino Tarifleri #23 – millis , micros , delay , delayMicroseconds

308
25 Ekim 2015 Ömer Faruk Uçar tarafından

Arkadaşlar merhaba, serimizin 23. bölümüne hoş geldiniz 🙂

Hatırlarsanız 19. bölümde fonksiyonlara başlarken demiştik ki “aslında fonksiyonları bu zamana kadar pek çok kez kullandık” . İşte bu videoda o pek çok kullandığımız başka bir fonksiyon olan delay fonksiyonundan ve onun arkadaşlarında bahsedeceğiz.

delay bildiğiniz üzere bekleme yapmak, gecikme vermek için kullanılan bir kod. Kendisi milisaniye mertebesinde çalışır. Yani 1 saniyelik bir bekleme için, delay(1000) kullanmamız gerekir. Bu kod yeteri kadar iyi bir gecikme imkanı sunsa da, hassas bekleme işlemlerinde veya algoritmamızı durdurmadan yapmamız gereken bir takım işlemlerde geri kalmaktadır. İşte bu videoda bu 2 konuya değinerek basit çözümler ile delayMicroseconds, millis ve micros fonksiyonlarını öğreneceğiz.

Dilerseniz lafı uzatmadan hemen videoya geçelim. Herkese iyi çalışmalar, kendinize iyi bakın, hoşça kalın 🙂

Videoda Kullanılan Malzemeler:

Videoda Kullanılan Devre:
milis micros delay delaymicroseconds

Videoda Kullanılan Kod:
Aslında videoda pek çok kod yazıldı ama hepsi basit basit teori anlatan kodlar idi. O yüzden hepsini verip burayı gereksiz yere karıştırmayıp, içlerinden sadece en uzun olanını ekledim arkadaşlar.

/*
   Lezzetli Robot Tarifleri
   Arduino Tarifleri -23-
   millis kullanımı
   VİDEO >>> http://lezzetlirobottarifleri.com/video/arduino-tarifleri-23-millis-micros-delay-delaymicroseconds
*/
const int led = 3;
unsigned long SimdikiZaman = 0;
unsigned long OncekiZaman = 0;
int aralik = 1000;

boolean durum = HIGH;
void setup()
{
  Serial.begin(9600);
  pinMode(led, OUTPUT);
}

void loop()
{
  SimdikiZaman = millis();
  if  (SimdikiZaman - OncekiZaman >= aralik)
  {
    OncekiZaman = SimdikiZaman;
    if  (durum == HIGH)
      durum = LOW;
    else if  ( durum == LOW)
      durum = HIGH;
    digitalWrite(led , durum);
  }
}

Kategoriler Etiketler

Yorumunuzu ekleyin

E-posta hesabınız yayımlanmayacak.