⚡ مسابقهی دو نفره
چه کسی سریعتر است؟ با قوانین انصاف.
سطح: متوسط ⭐⭐ · مود: آردوینو (سهبعدی + کد)
قطعات لازم
کد کامل پروژه
const int led = 13, p1 = 2, p2 = 3, buzzer = 8;
void setup() {
pinMode(led, OUTPUT);
pinMode(p1, INPUT_PULLUP);
pinMode(p2, INPUT_PULLUP);
pinMode(buzzer, OUTPUT);
randomSeed(analogRead(A0));
Serial.begin(9600);
}
void loop() {
Serial.println("Amade...");
digitalWrite(led, LOW);
delay(random(2000, 6000));
if (digitalRead(p1) == LOW || digitalRead(p2) == LOW) {
Serial.println("Zood zadi!");
tone(buzzer, 150, 500);
delay(2000);
return;
}
digitalWrite(led, HIGH);
unsigned long start = millis();
while (true) {
bool a = (digitalRead(p1) == LOW);
bool b = (digitalRead(p2) == LOW);
if (a || b) {
unsigned long ms = millis() - start;
digitalWrite(led, LOW);
Serial.print(a ? "Bazikon 1" : "Bazikon 2");
Serial.print(" bord ba ");
Serial.print(ms);
Serial.println(" ms");
tone(buzzer, 1200, 200);
break;
}
}
delay(2500);
}
چطور اجرایش کنم؟
- شبیهساز تینکرکد فارسی را باز کن و «مود آردوینو» را انتخاب کن.
- از پنل «نمونهها»، «مسابقهی دو نفره» را بارگذاری کن — مدار و کد با هم میآیند.
- دکمهی اجرا ▶ را بزن و خروجی Serial و رفتار قطعات را تماشا کن.
- حالا کد را تغییر بده — عددها، پینها، ترتیب — و دوباره اجرا کن!