⚡ درس 15: بازی سرعت واکنش

چند میلی‌ثانیه طول می‌کشه واکنش نشون بدی؟ با millis زمان رو مثل حرفه‌ای‌ها اندازه بگیر.

سطح: پیشرفته · زمان: حدود 15 دقیقه · مفاهیم: millis، اندازه‌گیری زمان، while

قدم‌های این درس

  1. مشکل delay
  2. ساخت بازی، مرحله‌به‌مرحله
  3. رکوردشکنی
  4. چالش: بازی دو نفره

نمونه‌ای از کد این درس

void setup() {
  pinMode(13, OUTPUT);          // چراغ «بزن!»
  pinMode(2, INPUT_PULLUP);     // دکمه
  Serial.begin(9600);
  randomSeed(analogRead(A0));
}

void loop() {
  digitalWrite(13, LOW);
  Serial.println("آماده باش...");
  delay(random(2000, 5000));    // انتظار شانسی!

  digitalWrite(13, HIGH);       // بزن!!
  long start = millis();

  while (digitalRead(2) == HIGH) { }   // منتظر دکمه

  long reaction = millis() - start;
  Serial.print("سرعت واکنش تو: ");
  Serial.print(reaction);
  Serial.println(" میلی‌ثانیه");
  delay(2000);
}

چرا این درس؟

دوره‌ی روبومیکر تعاملی است: هر قدم را خودت داخل شبیه‌ساز انجام می‌دهی — مدار واقعی می‌چینی، کد واقعی اجرا می‌کنی و نتیجه را همان لحظه می‌بینی. این درس روی درس‌های قبلی ساخته شده، پس اگر تازه شروع کرده‌ای از درس ۱ بیا!

این درس را رایگان در شبیه‌ساز شروع کن 🎓

درس‌های دیگر دوره

🎲

درس 14: تاس الکترونیکی

🕹️

درس 16: فرمان با ولوم — map