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

اجعل LED يضيء ويخفت تدريجيًا

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

للتلاشي إلى الأسفل مجددًا، يجب أن يغيّر مقدار الخطوة اتجاهه. احتفظ بمقدار الخطوة في متغير خاص به، fadeAmount. تؤدي إضافة عدد سالب إلى انخفاض السطوع:

int brightness = 0;
int fadeAmount = 5;

void loop() {
  analogWrite(9, brightness);
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(30);
}

تعكس علامة الطرح أمام المتغير إشارته: -fadeAmount تحوّل 5 إلى -5، و-5 إلى 5 مجددًا.

تتحقق if من كلا الطرفين. عند الحد الأعلى تصبح الخطوة -5 ويخفت مؤشر LED؛ وعند الحد الأدنى تصبح 5 مجددًا ويزداد سطوع مؤشر LED. يتنفس مؤشر LED، ولا يقفز أبدًا من السطوع إلى الظلام.

challenge icon

التحدي

سهل

اجعل مؤشر LED على المنفذ 9 يتلاشى سطوعه تدريجيًا ثم يزداد، مرارًا وتكرارًا:

  • متغير fadeAmount قيمته 5 بجانب brightness
  • أضف fadeAmount إلى السطوع في كل مرة تعمل فيها loop()، ثم انتظر 30 ms
  • اعكس إشارته عندما يصل السطوع إلى 0 أو 255

اضغط على Run، ثم Check.

جرّب بنفسك

const int ledPin = 9;
int brightness = 0;
// عرّف fadeAmount هنا

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  analogWrite(ledPin, brightness);
  brightness = brightness + 5;
  if (brightness > 255) {
    brightness = 0;
  }
  delay(30);
}
quiz iconاختبر نفسك

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

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

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