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

دستور randomSeed در آردوینو (تصادفی کردن اعداد random)

ما قبلا دستور random را بررسی کردیم. با دستور random میتوانستیم اعداد تصادفی را در محدوده دلخواه خود ایجاد کنیم. اما یک ایراد بر دستور random وارد است. آن هم این است که هر بار برد راه اندازی مجدد شود، اعداد تصادفی مشابهی تولید میشوند. در پروژه هایی که نیاز دارید حتی با ریستارت شدن برد، باز هم اعداد تصادفی تولید شده متفاوت باشند، باید از تابع randomSeed استفاده کنید.

با استفاده از این دستور، اعداد تصادفی تولید شده یک مرحله دیگر نیز تصادفی میشوند و بنابراین اعداد یکسانی را دریافت نمیکنید. زیرا این دستور با نویزی که در پایه های ورودی آنالوگ وجود دارد، اعداد مختلفی را برای شما ایجاد میکند.

دستور randomSeed

تابع randomSeed() به صورت زیر قابل استفاده است.

این دستور چه چیزی را بر میگرداند؟

چیزی را بر نمیگرداند.

نمونه کد با تابع randomSeed

با استفاده از کد زیر ما یک عدد تصادفی در محدوده 0 تا 299 تولید میکنیم. در این کد از تابع randomSeed استفاده کردیم بنابراین عدد تولید شده هربار متفاوت است.

long randNumber; // تعریف متغیر برای عدد تصادفی

void setup() {
  Serial.begin(9600); // آغاز ارتباط سریال
  randomSeed(analogRead(0)); // استفاده از دستور مورد نظر با پایه آنالوگ 0
}

void loop() {
  randNumber = random(300); // ایجاد عدد تصادفی در محدوده 0 تا 299
  Serial.println(randNumber); // نمایش عدد تصادفی در سریال مانیتور
  delay(50); // تاخیر به مدت 50 میلی ثانیه برای تولید عدد تصادفی بعدی
}

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

5/5 - (1 امتیاز)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام آیرنکس را دنبال کنید.
تصویر از محمد رحیمی

محمد رحیمی

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

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

نشانی ایمیل شما منتشر نخواهد شد.