🔁 ماموریت ۱۰: دکمه‌ی کلیدی

هر بار فشار دادن دکمه، LED عوض بشه (نه اینکه فقط موقع نگه داشتن روشن باشه).

سطح: متوسط ⭐⭐ · مود: آردوینو — با کد · رایگان

هدف‌ها

قطعه‌های لازم

▶ همین ماموریت را در شبیه‌ساز امتحان کن
💡 گیر کردی؟ داخل شبیه‌ساز راهنما را ببین، و اگر باز هم نشد دکمه‌ی «برام حلش کن» مدار را برایت می‌چیند تا ببینی چطور کار می‌کند.

جواب کامل

اول خودت امتحان کن! بعد جواب را ببین 👀

سیم‌کشی

  1. Arduino Uno (D2) ⟷ Push Button (PIN_A1)
  2. Push Button (PIN_A2) ⟷ Arduino Uno (GND1)
  3. Arduino Uno (D5) ⟷ مقاومت 220Ω (PIN1)
  4. مقاومت 220Ω (PIN2) ⟷ LED (Blue) (ANODE)
  5. LED (Blue) (CATHODE) ⟷ Arduino Uno (GND2)
  6. Arduino Uno (D6) ⟷ مقاومت 220Ω (PIN1)
  7. مقاومت 220Ω (PIN2) ⟷ LED (Blue) (ANODE)
  8. LED (Blue) (CATHODE) ⟷ Arduino Uno (GND2)
  9. Arduino Uno (D7) ⟷ مقاومت 220Ω (PIN1)
  10. مقاومت 220Ω (PIN2) ⟷ LED (Blue) (ANODE)
  11. LED (Blue) (CATHODE) ⟷ Arduino Uno (GND2)
  12. Arduino Uno (D8) ⟷ مقاومت 220Ω (PIN1)
  13. مقاومت 220Ω (PIN2) ⟷ LED (Blue) (ANODE)
  14. LED (Blue) (CATHODE) ⟷ Arduino Uno (GND2)

کد

// Press the button → counter increments. 4 LEDs show value in binary.
const int BUTTON = 2;
const int LEDS[] = {5, 6, 7, 8};
int count = 0;
bool last = HIGH;

void setup() {
  pinMode(BUTTON, INPUT_PULLUP);
  for (int i = 0; i < 4; i++) pinMode(LEDS[i], OUTPUT);
}

void loop() {
  bool now = digitalRead(BUTTON);
  if (last == HIGH && now == LOW) {
    count = (count + 1) % 16;
    delay(50);  // debounce
  }
  last = now;
  for (int i = 0; i < 4; i++) {
    digitalWrite(LEDS[i], (count >> i) & 1);
  }
}

ماموریت‌های مشابه

🎵

ماموریت ۹: یه آهنگ کوتاه

🎮

ماموریت ۱۱: دو دکمه، دو کار

🔢

ماموریت ۱۲: شمارنده در سریال

📶

ماموریت ۱۳: نوار سطح

📚 برای یاد گرفتن پایه‌ها سری به دوره‌ی آموزش آردوینو بزن · 🎯 همه‌ی ماموریت‌ها