Menu
CoddyTech
flag Ar iconالعربيةdown icon

الوميض عند تلقي أمر

جزء من قسم المدخلات في رحلة Arduino على Coddy. الدرس 18 من 22.

اكتب 3، وينبغي أن يومض مؤشر LED ثلاث مرات، ثم يتوقف. تتكرر loop() بالفعل، لذا دعها تتولى العد: احتفظ بمتغير لعدد الومضات المتبقية. في كل مرة تُشغَّل فيها loop()، إذا كانت هناك ومضات متبقية، فاجعل المؤشر يومض مرة واحدة وأنقص العدد بمقدار واحد.

int blinksLeft = 0;

void loop() {
  // يحدّد رقم من شاشة Serial قيمة blinksLeft
  if (blinksLeft > 0) {
    // ومضة واحدة
    blinksLeft = blinksLeft - 1;
  }
}

عندما تصل قيمة blinksLeft إلى 0، يكون شرط if خاطئًا ويبقى مؤشر LED مطفأً حتى الرقم التالي.

يجعل محرف السطر الجديد بعد الرقم الدالة parseInt() تُرجع 0 بعد ثانية أخرى. تجاهل 0 كما في السابق، وإلا فسيؤدي إلى محو الومضات المتبقية.

challenge icon

التحدي

متوسط

اجعل مؤشر LED يومض على المنفذ 13 عدد المرات التي يساوي الرقم المكتوب في شاشة Serial:

  • عند وجود أحرف في الانتظار، اقرأ رقمًا باستخدام parseInt()، وخزّنه في blinksLeft إذا كان أكبر من 0
  • إذا كانت قيمة blinksLeft أكبر من 0، فاجعل المؤشر يومض مرة واحدة (مضاء لمدة 200 ms، ومطفأ لمدة 200 ms) وأنقص القيمة بمقدار واحد

اضغط على Run، وأرسل 3 من شاشة Serial، ثم اضغط على Check.

جرّب بنفسك

const int ledPin = 13;

int blinksLeft = 0;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  // يحدد رقم من شاشة Serial قيمة blinksLeft
  // ما دامت قيمة blinksLeft أكبر من 0، أومض مرة واحدة واطرح منها واحدًا
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس المدخلات

تدرّب بنفسك: Playground لـ Arduino