يتلاشى LED ON / OFF - أساسيات Arduino

جرب أداة القضاء على المشاكل





يناقش المنشور وظيفة Arduino الأساسية حيث نتعلم عملية تلاشي LED ON / OFF من خلال بعض تطبيقات التعليمات البرمجية الأساسية.

خلق تأثير يتلاشى

نرى كيفية استخدام وظيفة analogwrite () من أجل تنفيذ تشغيل / إيقاف تشغيل باهت لمصباح LED. تتضمن الوظيفة نبضات PWM عبر pinout لإنجاز إجراء الخبو المقترح على LED المتصل.



الأجهزة المطلوبة

إلى جانب Arduino الخاص بك ، ستكون هناك حاجة إلى مواد أخرى مثل لوح التجارب ومصباح LED ومقاوم 220 أوم ، 1/4 واط للتجربة.

الدائرة

الخطوات المتبعة لتلاشي تشغيل / إيقاف LED المقترح مع Arduino هي كما يلي:



1. قم بتوصيل الطرف الأطول من LED بدبوس الإخراج الرقمي رقم 9 عبر المقاوم 220 أوم في السلسلة ، بينما الكاثود أو الطرف الأقصر من LED مع الأرض مباشرة أو سكة الإمداد السالبة.

الرمز

بمجرد دمج الدبوس رقم 9 من اللوحة باعتباره الدبوس الإيجابي LED ، يمكن ترك وظيفة الإعداد () بمفردها ولن تحتاج إلى أي عمليات أخرى.

يحتاج مكون كود الحلقة الرئيسي في شكل analogwrite () إلى اثنين من الإقرارات: الأول يتناول الوظيفة المتعلقة بالدبوس الذي سيتم استخدامه للكتابة ، والثاني هو قيمة PWM التي يتعين تحديدها.

لبدء تأثير تشغيل / إيقاف الخبو على مؤشر LED المتصل ، يمكن تغيير PWM باستمرار من صفر إلى الحد الأقصى أو إلى 255 والعكس صحيح ، واستكمال دورة التشغيل الفردية بأكملها.

يوضح الكود أدناه حجم PWM الذي يتم تحديده من خلال متغير يسمى السطوع. كما أنه يزداد بمقدار fadeAmount المتغير في الحلقة.

في المواقف التي يكون فيها السطوع عند القيم القصوى (إما 0 أو 255) ، تتلاشى المطالبات

الكمية لتصبح سالبة.

المعنى إذا افترضنا أن مقدار fadeAmount هو 5 ، فإنه يتغير إلى -5 ، و 5 في حالة تعيينه على 55. في الفترات اللاحقة في الحلقة ، ينتج عن هذه التغييرات سطوع لتغيير مسار الإجراء أيضًا.

تتسبب الوظيفة analoguewrite () في تغييرات سريعة في قيم PWM ، بحيث يتحكم التأخير في نهاية الرسم في سرعة التلاشي.
يمكنك تجربة قيم التأخير للتحقق من التغييرات التي تم إجراؤها في البرنامج.
/ *
يختفي

يوضح هذا المثال كيفية تلاشي مؤشر LED على السن 9
باستخدام وظيفة analogWrite ().

رمز المثال هذا موجود في المجال العام.
* /

int led = 9 // الدبوس الذي تم توصيل LED به
سطوع int = 0 // مدى سطوع LED
int fadeAmount = 5 // كم عدد النقاط التي يتلاشى مؤشر LED بها

// يتم تشغيل روتين الإعداد مرة واحدة عند الضغط على إعادة تعيين:
الإعداد باطل() {
// أعلن أن الدبوس 9 هو ناتج:
pinMode (الصمام ، الإخراج)
}

// يعمل روتين الحلقة مرارًا وتكرارًا إلى الأبد:
حلقة فارغة() {
// اضبط سطوع الدبوس 9:
analogWrite (الصمام ، السطوع)

// تغيير السطوع في المرة القادمة من خلال الحلقة:
السطوع = السطوع + مقدار التلاشي

// عكس اتجاه التلاشي في نهايات الخبو:
إذا (السطوع == 0 || السطوع == 255) {
fadeAmount = -fadeAmount
}
// انتظر 30 مللي ثانية لترى تأثير التعتيم
تأخير (30)
}




زوج من: 110V مدمجة LED Tubelight الدائرة التالى: الجهد العالي ، الترانزستور العالي الحالي TIP150 / TIP151 / TIP152 ورقة بيانات