🔂 حلقه در آردوینو — کد تکراری را کوتاه کن
اگر در کدت چند خط تقریباً یکسان پشت سر هم دیدی، آنجا جای یک حلقه است.
قبل و بعد
بدون حلقه، روشنکردن پنج LED یعنی پنج خط تکراری. با حلقه، سه خط:
for (int pin = 2; pin <= 6; pin++) {
digitalWrite(pin, HIGH);
delay(100);
}
و اگر بخواهی ۲۰ تا بشود، فقط یک عدد را عوض میکنی.
سه بخش for
for (شروع؛ شرط ادامه؛ قدم)
- شروع:
int i = 0— یک بار در ابتدا - شرط:
i < 10— قبل از هر دور بررسی میشود - قدم:
i++— بعد از هر دور
شمردن برعکس
for (int i = 10; i > 0; i--) {
Serial.println(i);
delay(1000);
}
Serial.println("Shoroo!");
while — وقتی تعداد را نمیدانی
اگر منتظر یک اتفاق هستی نه یک تعداد مشخص، while مناسبتر است:
while (digitalRead(2) == HIGH) {
// تا وقتی دکمه فشرده نشده صبر کن
}
⚠️ خطر حلقهی بیپایان: اگر شرط هیچوقت غلط نشود، برنامه برای همیشه آنجا گیر میکند و هیچ کار دیگری نمیکند. مطمئن شو چیزی داخل حلقه شرط را در نهایت عوض میکند.
حلقهی تودرتو
برای الگوهای دوبعدی، مثل چشمکزدن سهبارهی پنج LED:
for (int round = 0; round < 3; round++) {
for (int pin = 2; pin <= 6; pin++) {
digitalWrite(pin, HIGH); delay(60);
digitalWrite(pin, LOW);
}
}
break و continue
break از حلقه بیرون میپرد و continue فقط این دور را رد میکند. مفیدند، ولی اگر زیاد استفادهشان کنی کد گیجکننده میشود.