في هذا المشروع ، سنقوم بتصميم شاشة عرض مصفوفة 8×8 LED ، لذلك سنقوم بتوصيل وحدة مصفوفة 8×8 LED مع الاردوينو . تحتوي مصفوفة 8×8 LED على 64 LED (الثنائيات الباعثة للضوء) مرتبة في شكل مصفوفة ، ومن هنا جاء اسم مصفوفة LED.
يمكن عمل هذه المصفوفات عن طريق دائرة 64 LEDs ، إلا أن هذه العملية تستغرق وقتًا طويلاً. وهي متوفرة الآن في أشكال مضغوطة كما هو موضح في الصورة أدناه. تتوفر هذه الوحدات المدمجة بأحجام مختلفة والعديد من الألوان. تكلفة الوحدة هي نفس تكلفة 64 مصباح LED ، لذلك من الأسهل بالنسبة للهواة العمل عليها.
تحتوي مصفوفة LED العارية على 16 دبوسًا مع 8 موجبات مشتركة و 8 سلبية مشتركة أخرى. لتوصيل هذه المصفوفة مباشرة بـ UNO ، نحتاج إلى الاحتفاظ بـ 16 دبوسًا على UNO. مع انخفاض دبابيس الإخراج على UNO ، لا يمكننا توفير 16 PINS. لذلك نحن بحاجة إلى توصيل هذه المصفوفة بشريحة تشغيل. تأتي شريحة المحرك هذه مع المصفوفة كمجموعة موضحة في الشكل أدناه.
تحتوي مصفوفة LED العارية على 16 دبوسًا مع ثمانية اطراف موجبة مشتركة و ثمانية اطراف سالبة مشتركة أخرى. لتوصيل هذه المصفوفة مباشرة بـ UNO ، نحتاج إلى الاحتفاظ بـ 16 دبوسًا على UNO. مع انخفاض دبابيس الإخراج على UNO ، لا يمكننا توفير 16 PINS. لذلك نحن بحاجة إلى توصيل هذه المصفوفة بشريحة تشغيل او ما بدائرة قيادة لهذه هذه LEDs موضحة في الشكل أعلاه .
سيتم ربط هذه الوحدة مع الاردوينو لعرض الحروف الهجائية ، ومن ثم عرض المصفوفة. في البداية ، لربط مصفوفة LED مع الاردوينو ، نحتاج إلى تنزيل مكتبة مصممة خصيصًا لـ LED MATRIX. ستكون هذه المكتبة متاحة على:
https://github.com/shaai/Arduino_LED_matrix_sketch/archive/master.zip
بعد تنزيل ملف Zip ، قم باستخراج المحتويات إلى مجلد الاردوينو . (انتقل إلى القرص المحلي حيث تم تثبيت برنامج ARDUINO NIGHTLY ، وافتح المجلد ، وابحث عن المجلد المسمى “Library” ، واستخرج محتويات الملف المضغوط في هذا المجلد ، وأعد تشغيل البرنامج ، وستتمكن الآن من استخدام ميزات واجهة المصفوفة)
المكونات المطلوبة
مخطط الدائرة وشرحها
يتم عرض التوصيلات التي تمت بين الاردوينو ووحدة مصفوفة LED في الجدول أدناه.
PIN2 ——————LOAD or CHIPSELECT of LED module
PIN3——————CLOCK of LED module
PIN4 ——————DATAIN of LED module
+5V ——————VCC of LED module
GND ——————GND of LED module
يظهر الرسم التخطيطي لدائرة شاشة عرض مصفوفة LED 8 * 8 في الشكل أدناه.
الآن لاستخدام المميزات الخاصة التي تسمى عن طريق تثبيت مكتبة جديدة ، نحتاج إلى إنشاء بعض الأوامر في البرنامج وهي مذكورة أدناه.
#include “LedControlMS.h” #define NBR_MTX 1 LedControl lc=LedControl(4,3,2, NBR_MTX); lc.writeString(0,”CIRCUITDIGEST”); lc.clearAll(); |
الآن لاستخدام المميزات الخاصة التي تسمى عن طريق تثبيت مكتبة جديدة ، نحتاج إلى إنشاء بعض الأوامر في البرنامج وهي مذكورة أدناه.
نحتاج أولاً إلى استدعاء الملف الرئيسي لربط مصفوفة LED بـ الاردوينو . وهذا هو ”#include“ LedControlMS.h ”” ، يستدعي ملف المكتبة الخاصة.
لدينا ميزة مع هذه الوحدات ، حيث يمكننا توصيل العديد من الوحدات في سلسلة وبرمجتها معًا كشاشة واحدة. تكون هذه الميزة مفيدة عندما نحتاج إلى وحدة عرض يمكنها عرض أحرف متعددة في كل مرة. لذلك نحن بحاجة إلى إخبار وحدة التحكم بعدد الشاشات التي نربطها.
يوجد في هذه الوحدة ثلاثة دبابيس بشكل أساسي ؛ الدبابيس هي DATAIN (دبوس استقبال البيانات) ، CLOCK (دبوس الساعة) ، و CHIPSELECT (دبوس استقبال الأوامر).
الآن نحن بحاجة إلى إخبار UNO أين نربط هذه الدبابيس . يتم ذلك عن طريق الأمر “LedControl lc = LedControl (4،3،2، NBR_MTX)؛ “. “lc.writeString (0،” CIRCUITDIGEST “) ؛” ، يتم استخدام هذا الأمر لإخبار UNO بالأحرف التي سيتم عرضها على مصفوفة LED. مع ما ورد أعلاه ، تعرض الشاشة “CIRCUITDIGEST” ، مع كل حرف مرة واحدة.
نحتاج إلى مسح ذاكرة شريحة العرض قبل إرسال أي بيانات أخرى ، ويتم ذلك عن طريق الأمر “lc.clearAll ()؛”.
بهذه الطريقة يمكننا بسهولة ربط مصفوفة 8×8 LED بـ Arduino Uno.