رفتن به محتوا

اولین برنامه آردوینو

در دنیای برنامه‌نویسی، یه رسم قشنگ وجود داره: وقتی می‌خوای یه زبان جدید یاد بگیری، اولین کاری که می‌کنی اینه که برنامه‌ای بنویسی که روی صفحه نمایش برات چاپ کنه Hello World.

اما توی دنیای الکترونیک و آردوینو، Hello World ما نوشته روی صفحه نیست؛ چیزی خیلی ملموس‌تر و فیزیکی‌تره: چشمک‌زن کردن یک چراغ (LED)!

امروز قراره اولین Sketch خودمون رو بنویسیم (به برنامه‌های آردوینو می‌گن اسکچ). و بهترین قسمتش اینه که فعلاً نیاز نیست چیزی به آردوینو وصل کنی. از همون LED کوچولویی استفاده می‌کنیم که روی خودِ برد آردوینو وجود داره.


نرم‌افزار Arduino IDE رو باز کن. اگه یه فایل جدید بسازی (File > New)، می‌بینی که خالی نیست. آردوینو همیشه یه چارچوب اولیه بهمون می‌ده.

این چارچوب دو بخش حیاتی داره که همیشه باید وجود داشته باشن. این‌ها قلب هر برنامه‌ی آردوینو هستن:

void setup() {
// کدهایی که فقط یک بار اجرا می‌شن رو اینجا می نویسیم
}
void loop() {
// کدهایی که قراره مُدام تکرار بشن رو اینجا می نویسیم
}

بیا با یه مثال از زندگی روزمره بهتر درکشون کنیم:

این تابع فقط یک بار اجرا می‌شه؛ دقیقاً وقتی که آردوینو رو روشن می‌کنی یا دکمه ریست رو می‌زنی.

مثل “جمع کردن کوله‌پشتی قبل از رفتن به مدرسه” می‌مونه. اینجا کارهای مقدماتی رو انجام می‌دیم: مثلاً می‌گیم از کدوم پایه‌ها می‌خوایم استفاده کنیم، ارتباط‌ها رو برقرار می‌کنیم و غیره.

بعد از اینکه تموم شد، دیگه تا دفعه بعد که برد رو ریست کنی، بهش نگاه نمی‌کنه.


برای تست اینکه همه‌چیز درسته، از یکی از مثال‌های پیش‌فرض خودِ Arduino IDE استفاده می‌کنیم.

arduino-ejemplos

برو به مسیر File > Examples > Basics > Blink. کدی شبیه به این برات باز می‌شه:

const int pinLED = 13; // تعریف متغیر برای اشاره به شماره پایه چراغ
void setup()
{
pinMode(pinLED, OUTPUT); // تعیین پایه شماره 13 به عنوان خروجی
}
void loop() {
digitalWrite(pinLED, HIGH); // روشن کردن چراغ
delay(1000); // یک ثانیه صبر کن
digitalWrite(pinLED, LOW); // خاموش کردن چراغ
delay(1000); // یک ثانیه صبر کن
}

این مثال، LED را هر یک ثانیه روشن و خاموش می‌کند. LED استفاده‌شده در بسیاری از بردهای آردوینو (UNO، MEGA و غیره) به‌صورت فیزیکی به پین ۱۳ متصل است.

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

توی این برنامه از سه تابع خیلی مهم استفاده کردیم که ۹۰٪ مواقع باهاشون سر و کار داری:

به آردوینو می‌گه که فلان پایه قراره چه رفتاری داشته باشه.

  • کجا استفاده می‌شه؟ تقریباً همیشه توی setup().
  • پارامترها:
    • pin: شماره پایه (اینجا می توانستیم از ثابت LED_BUILTIN استفاده کنیم که خودِ IDE بفهمه منظور همون ۱۳ هست).
    • mode: یا OUTPUT (خروجی) یا INPUT (ورودی).

ابتدا برد آردوینو را با کابل مناسب به کامپیوتر وصل می‌کنیم. مدل‌های اولیه از کابل USB A-B استفاده می‌کردند، اما مدل‌های دیگر از پورت های مینی، میکرو یا حتی USB تایپ C استفاده می‌کنند.

کابل پرینتری آردوینو کابل USB A-B، نوعی که معمولاً برای اتصال پرینترها استفاده می‌شود.

حالا Arduino IDE را باز می‌کنیم و مدل بردی را که استفاده می‌کنیم انتخاب می‌کنیم:

arduino-board

در ادامه، پورتی که بردمون به آن متصل است را انتخاب می‌کنیم:

arduino-porrt

حالا اتصال پیکربندی شده و آماده‌ایم تا اولین برنامه خودمان را روی برد بارگذاری کنیم.


کافیه روی دکمه مشخص‌شده کلیک کنیم تا برنامه کامپایل شده و به برد آردوینو ارسال شود. بعد از چند ثانیه، IDE برنامه را کامپایل می‌کند و صفحه باید شبیه تصویر زیر شود:

arduino-compilado

بعد از چند ثانیه، برد شروع می‌کنه به اجرای برنامه و LED شروع می‌کنه به چشمک زدن 😊.