في هذا المشروع ، سنقوم بواجهة 5 RGB (أحمر أخضر أزرق) LEDs إلى Arduino Uno. هذه المصابيح متصلة بالتوازي لتقليل استخدام PIN لـ Uno.
يظهر RGB LED النموذجي في الشكل أدناه:
سيحتوي RGB LED على أربعة دبابيس كما هو موضح في الشكل.
PIN1: اللون 1 الطرف السالب أو اللون 1 الطرف الموجب
PIN2: شائع إيجابي لجميع الألوان الثلاثة أو سلبي مشترك لجميع الألوان الثلاثة
PIN3: اللون 2 الطرف السالب أو اللون 2 الطرف الموجب
PIN4: اللون 3 الطرف السالب أو اللون 3 الطرف الموجب
لذلك هناك نوعان من RGB LEDs ، أحدهما نوع الكاثود الشائع (سلبي شائع) والآخر هو نوع الأنود الشائع (النوع الإيجابي الشائع). في CC (الكاثود المشترك أو السلبي المشترك) ، سيكون هناك ثلاثة أطراف موجبة ، كل طرف يمثل لونًا وطرفًا سالبًا يمثل الألوان الثلاثة. يمكن تمثيل الدائرة الداخلية لمصابيح CC RGB LED على النحو التالي.
إذا أردنا تشغيل RED أعلاه ، فنحن بحاجة إلى تشغيل دبوس RED LED وتأريض السلبية المشتركة. الشيء نفسه ينطبق على جميع المصابيح. في CA (الأنود المشترك أو الموجب المشترك) ، سيكون هناك ثلاثة أطراف سالبة كل طرف يمثل لونًا وطرفًا موجبًا يمثل الألوان الثلاثة. يمكن تمثيل الدائرة الداخلية لمصباح CA RGB LED كما هو موضح في الشكل..
إذا أردنا تشغيل RED أعلاه ، فنحن بحاجة إلى تأريض دبوس LED الأحمر وتشغيل الإيجابي المشترك. الشيء نفسه ينطبق على جميع المصابيح.
في دائرتنا سنستخدم نوع CA (الأنود المشترك أو الإيجابي المشترك). لتوصيل 5 RGB LEDs بـ Arduino ، نحتاج إلى 5x4 = 20 PINS عادةً ، سنقوم بتقليل استخدام PIN هذا إلى 8 عن طريق توصيل RGB LEDs بالتوازي وباستخدام تقنية تسمى تعدد الإرسال.
مكونات
الأجهزة: UNO ، مصدر طاقة (5 فولت) ، مقاوم 1KΩ (3 قطع) ، RGB (أحمر أخضر أزرق) LED (5 قطع)
البرنامج: Atmel studio 6.2 أو Aurdino ليلاً.
شرح الدائرة والعمل
يظهر اتصال الدائرة لواجهة RGB LED Arduino في الشكل أدناه.
الآن بالنسبة للجزء الصعب ، لنفترض أننا نريد تشغيل RED في SET1 و GREEN LED في SET2. نقوم بتشغيل PIN8 و PIN9 من UNO والأرضي PIN7 و PIN6.
مع هذا التدفق ، سيكون لدينا RED في المجموعة الأولى والأخضر في المجموعة الثانية ، ولكن سيكون لدينا GREEN في SET1 و RED في SET2 ON معها. من خلال القياس البسيط يمكننا أن نرى أن جميع المصابيح الأربعة تغلق الدائرة بالتكوين أعلاه وبالتالي تتوهج جميعها.
لذلك للقضاء على هذه المشكلة ، سنقوم بتشغيل مجموعة واحدة فقط في كل مرة. قل في t = 0m SEC ، SET1 مضبوط على ON. عند t = 1m SEC ، يتم ضبط SET1 على وضع الإيقاف OFF ويتم تشغيل SET2. مرة أخرى عند t = 6m SEC ، يتم إيقاف تشغيل SET5 ويتم تشغيل SET1. يستمر هذا.
الحيلة هنا هي أن العين البشرية لا يمكنها التقاط تردد يزيد عن 30 هرتز. هذا إذا تم تشغيل وإيقاف تشغيل LED بشكل مستمر بمعدل 30 هرتز أو أكثر. ترى العين أن مؤشر LED يعمل باستمرار. ولكن هذا ليس هو الحال. سيتم تشغيل وإيقاف LED باستمرار. هذه التقنية تسمى مضاعفة الإرسال.
ببساطة ، سنقوم بتشغيل كل كاثود مشترك من 5 مجموعات و 1 مللي ثانية ، لذلك في 5 مللي ثانية سنكمل الدورة ، وبعد ذلك تبدأ الدورة من SET1 مرة أخرى ، وهذا يستمر إلى الأبد. نظرًا لأن مجموعات LED تعمل وتتوقف بسرعة كبيرة. يتوقع الإنسان أن جميع المجموعات تعمل طوال الوقت.
لذلك عندما نقوم بتشغيل SET1 عند t = 0 ملي ثانية ، فإننا نؤرض الدبوس الأحمر. عند t = 1 مللي ثانية ، نقوم بتشغيل SET2 ونقوم بتأريض الدبوس الأخضر (في هذا الوقت يتم سحب الأحمر والأزرق عاليًا). تتحرك الحلقة بسرعة وترى العين توهجًا أحمر في مجموعة FIRST SET وتوهجًا أخضر في مجموعة ثانية.
هذه هي الطريقة التي نبرمج بها RGB LED ، وسوف نضيء كل الألوان ببطء في البرنامج لنرى كيف يعمل تعدد الإرسال.