⚡ شمارنده‌ی وقفه

هیچ فشاری گم نمی‌شود، حتی در دل delay.

سطح: چالشی ⭐⭐⭐ · مود: آردوینو (سه‌بعدی + کد)

قطعات لازم

کد کامل پروژه

const int button = 2, led = 13;
volatile int count = 0;
volatile bool changed = false;

void onPress() {
  count++;
  changed = true;
}

void setup() {
  pinMode(button, INPUT_PULLUP);
  pinMode(led, OUTPUT);
  attachInterrupt(digitalPinToInterrupt(button), onPress, FALLING);
  Serial.begin(9600);
}

void loop() {
  digitalWrite(led, HIGH);
  delay(400);
  digitalWrite(led, LOW);
  delay(400);

  if (changed) {
    changed = false;
    Serial.print("shomare:");
    Serial.println(count);
  }
}

چطور اجرایش کنم؟

  1. شبیه‌ساز تینکرکد فارسی را باز کن و «مود آردوینو» را انتخاب کن.
  2. از پنل «نمونه‌ها»، «شمارنده‌ی وقفه» را بارگذاری کن — مدار و کد با هم می‌آیند.
  3. دکمه‌ی اجرا ▶ را بزن و خروجی Serial و رفتار قطعات را تماشا کن.
  4. حالا کد را تغییر بده — عددها، پین‌ها، ترتیب — و دوباره اجرا کن!
این پروژه را رایگان در شبیه‌ساز اجرا کن 🤖