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

دستور return در برنامه نویسی آردوینو (پایان دادن به تابع)

استفاده از دستور return برای پایان دادن به یک تابع استفاده میشود. با استفاده از این دستور میتوانید تابع را تمام کنید و در صورت نیاز یک مقدار را بازگشت بدهید.

return;
return value;

  • value: انواع داده مجاز: هر نوع متغیر یا ثابت.

نمونه استفاده از return

میتوان از دستور return برای بازگشت دادن مقادیر مختلف در صورت وقوع شرایط مختلف استفاده کرد. در کد زیر هنگامی که مقدار آنالوگ خوانده شده از پین 0 بیشتر از 400 باشد، تابع checksensor مقدار 1 را برمیگرداند و در صورتی که مقدار کمتر از 400 باشد مقدار 0 را بر میگرداند.

int checkSensor() { // بررسی وضعیت سنسور
  if (analogRead(0) > 400) { // اگر مقدار سنسور از  400بیشتر بود
    return 1; // عدد 1 را بازگشت میدهد
  }
  else { // در غیر اینصورت
    return 0; // عدد 0 را بازگشت میدهد
  }
}

توجه داشته باشید که دستوراتی که بعد از return که در همان حلقه قرار دارند اجرا نمیشوند.

4.9 (7 نفر)

مطلب پیشنهادی:  نمایش تاریخ و ساعت با RTC DS1307 و آردوینو
برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

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

برای ارسال تصاویر از انجمن سایت استفاده کنید.

سوالات فنی را در انجمن سایت مطرح کنید تا در مسابقه شرکت کنید. ورود به انجمن

8 نظر

  1. سلام
    چجوری میتونم رشته ،ارایه یا هرچیز دگه ای رو در تابع های اردوینو return کنم؟

    1. سلام عزیز
      در تابع مورد نظر داده را در یک متغیر مثلا با نام a بریزید.
      دقت کنید که نوع تابع با نوع متغیر یکی باشد.
      سپس return a; را در تابع قرار دهید.

  2. void loop() {
    BUTTON1state = digitalRead(BUTTON1);
    BUTTON2state = digitalRead(BUTTON2);
    BUTTON3state = digitalRead(BUTTON3);
    BUTTON4state = digitalRead(BUTTON4);
    if (BUTTON1state == HIGH && (digitalRead(BUTTON3) == HIGH )) { // Button position in End of Limit
    Stop_Ramp();
    }
    else if (BUTTON1state == HIGH && (digitalRead(BUTTON3) == LOW )) {
    Open_Ramp();
    }
    if (BUTTON2state == HIGH && (digitalRead(BUTTON4) == HIGH )) { // Button position in End of Limit
    Stop_Ramp();
    }
    else if (BUTTON2state == HIGH && (digitalRead(BUTTON4) == LOW )) {
    Close_Ramp();
    }
    }
    void Open_Ramp() {
    digitalWrite(Motor1 , HIGH) ; // Open
    analogWrite(Motor2 , 235 ) ;
    }
    void Close_Ramp() {
    digitalWrite(Motor1 , LOW) ; // Close
    analogWrite(Motor2 , 20 );
    }
    void Stop_Ramp() {
    digitalWrite(Motor1 , HIGH) ; // Stop
    analogWrite(Motor2 , 255 ) ;
    }
    void Blink() {
    }
    void Alarm() {
    }
    حلقه loop رو ببينيد با دو شرط دو فرمان باز و بسته شدن رو اجرا ميكنه. حالا من ميخوام وقتي باز شد در حال اجرا بود و ميكروسوييچي فعال شد عمليات باز شدن كلا متوقف بشه

    1. یک پایه رو برای میکروسوئیچ در نظر بگیرید، در شرط باز شدن، یک شرط تعیین کنید زمانی که مبکروسوئیچ فعال بشه استاپ بشه
      اگر در ادامه سوالی داشتید در انجمن اعلام کنید یا برای یادگیری برنامه نویسی آردوینو میتونید از دوره آردوینو استفاده کنید

    1. برای موتور دی سی، از موتور درایور L293d استفاده کنید و با برعکس کردن پایه + و – میتونید چپگرد و راست گرد کنید. برای کنترل سرعت هم میتونید از دستور analogWrite استفاده کنید.

  3. سلام
    میخوام با 2 کلید موتوری رو چپگرد و راستگرد کنم و همچنین با دو کلید دیگر شرطی بذارم که حرکت موتور محدود شود. برای باز و بسته کردن یک کشو میخواهم

    حلقه ها و شرط ها را چطور بنویسم؟ ممنون

    1. سلام عزیز، برای یادگیری برنامه نویسی آردوینو میتونید دوره آموزش آردوینو رو مشاهده کنید

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

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