🗄️ آرایه در آردوینو — چند مقدار زیر یک نام

وقتی شش LED داری، نوشتن led1 تا led6 کار را زجرآور می‌کند. آرایه این را حل می‌کند.

ساختن آرایه

int ledPins[] = {2, 3, 4, 5, 6, 7};
const int count = 6;

دسترسی با شماره

ledPins[0] اولین خانه است — یعنی عدد ۲. شمارش از صفر شروع می‌شود و این مهم‌ترین نکته‌ی آرایه است. آخرین خانه ledPins[5] است، نه [6].

جادوی اصلی: آرایه + حلقه

void setup() {
  for (int i = 0; i < count; i++) {
    pinMode(ledPins[i], OUTPUT);
  }
}
void loop() {
  for (int i = 0; i < count; i++) {
    digitalWrite(ledPins[i], HIGH);
    delay(80);
    digitalWrite(ledPins[i], LOW);
  }
}

می‌خواهی ده LED بشود؟ فقط آرایه و count را عوض کن. هیچ خط دیگری تغییر نمی‌کند.

دو آرایه‌ی هم‌ردیف

ترفند خیلی پرکاربرد: دو آرایه که خانه‌های هم‌شماره‌شان به هم مربوط‌اند.

int keys[]  = {2, 3, 4, 5};
int notes[] = {262, 294, 330, 349};

for (int i = 0; i < 4; i++) {
  if (digitalRead(keys[i]) == LOW) {
    tone(8, notes[i]);       // دکمه i، نت i
  }
}
⚠️ اگر آرایه ۶ خانه دارد و ledPins[6] یا [7] را بخوانی، آردوینو خطا نمی‌دهد — عددی تصادفی از حافظه می‌خواند و برنامه عجیب رفتار می‌کند. این یکی از سخت‌ترین باگ‌ها برای پیدا کردن است، پس همیشه شرط حلقه را i < count بگذار.

آرایه‌ی دوبعدی

برای چیزهایی مثل صفحه‌کلید ماتریسی:

char keys[4][4] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};
// keys[1][2] یعنی '6'
آرایه را با چند LED تمرین کن 🗄️

مقاله‌های دیگر

🤖

آردوینو چیست؟ راهنمای کامل برای شروع از صفر

بهترین شبیه‌ساز مدار آنلاین فارسی — چرا شبیه‌ساز، و چرا روبومیکر؟

💡

ساده‌ترین پروژه الکترونیک برای بچه‌ها: روشن‌کردن یک LED