آموزش آردوینودستورات آردوینو

دستور delay در آردوینو (ایجاد تاخیر در برنامه)

دستور delay در آردوینو برای ایجاد تاخیر در برنامه استفاده میشود.

برنامه را برای مدت زمان تعیین شده (بر حسب میلی ثانیه) که به عنوان پارامتر مشخص شده متوقف می کند. (در هر ثانیه 1000 میلی ثانیه وجود دارد)

دستور delay

delay(ms)

  • ms: به جای ms مدت زمان تاخیر مورد نیاز را وارد میکنیم.

به طور مثال اگر میخواهید برنامه 2 ثانیه متوقف شود، باید دستور را به شکل delay(2000) بنویسید.

برای یادگیری آردوینو (برنامه نویسی، ساخت ربات، ارتباط با اندروید) روی دوره آموزش آردوینو کلیک کنید.
برای یادگیری کامل الکترونیک روی دوره آموزش الکترونیک کلیک کنید.

نمونه کد با دستور delay

کد زیر پین 13 را روشن و خاموش (Toggle) میکند. در این کد از دستور digitalWrite استفاده میشود.

void setup() {
  pinMode(13, OUTPUT);    // تنظیم پین دیجیتالی 13 در حالت خروجی
}

void loop() {
  digitalWrite(13, HIGH); // HIGH کردن پین دیجیتالی 13
  delay(1000);            // تاخیر به مدت 1 ثانیه
  digitalWrite(13, LOW);  // LOW کردن پین دیجیتالی 13
  delay(1000);            // تاخیر به مدت 1 ثانیه
}

نکات:

راه اندازی پروژه LED چشمک زن در آردوینو با دستور delay آسان است. بسیاری از پروژه ها شامل تاخیر های کوتاه هستند. اما استفاده از delay مشکلات قابل توجهی ایجاد میکند. به طور مثال در زمان تاخیر، هیچ اطلاعاتی از سنسور ها دریافت نمیشود و محاسبات ریاضی یا … انجام نمیشود. بنابراین دستور delay به طور کامل فعالیت های دیگر را متوقف میکند. برنامه نویسان حرفه معمولا از دستور delay برای تاخیر های بیشتر از 10 میلی ثانیه استفاده نمیکنند مگر اینکه پروژه بسیار ساده باشد.

البته برخی کار ها در حین اجرای دستور delay انجام میشوند، مثل وقفه ها، ارتباط سریال پین RX، سیگنال PWM و …

دستورات مرتبط:

برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید.

برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام آیرنکس عضو شوید.

تصویر از محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *