مصفوفة LED 8x8 باستخدام وحدة Arduino MAX7219
في هذا الدرس، سنتعلم كيفية التحكم في مصفوفة LED بحجم 8x8 باستخدام وحدة MAX7219 مع لوحة Arduino. تُبسط MAX7219 التحكم في عدة مصابيح LED، مما يتيح لنا عرض الأحرف والأنماط بسهولة. بنهاية هذا المشروع، ستكون قادرًا على عرض كلمة "ROBOJAX" على المصفوفة.
لتحقيق ذلك، سنستخدم مكتبة LedControl، التي تم تصميمها خصيصًا للتواصل مع MAX7219. تتيح لنا هذه المكتبة إرسال البيانات إلى مصفوفة LED بأقل جهد ممكن. إذا كنت ترغب في فهم أوضح للتوصيلات والرمز، تأكد من مشاهدة الفيديو المرتبط (في الفيديو عند 0:30).
شرح الأجهزة
تشمل المكونات الأساسية لهذا المشروع وحدة MAX7219 ومصفوفة LED 8x8. MAX7219 هو دائرة متكاملة تدير عرض LEDs، حيث تتعامل مع إشارات الاتصال والتحكم من الأردوينو. تستخدم واجهة تسلسلية، مما يعني أنه يمكننا التحكم في العديد من LEDs باستخدام عدد قليل من الدبابيس من الأردوينو.
يتكون مصفوفة LED 8x8 من 64 LED فردي مرتبة في شبكة. يمكن تشغيل كل LED أو إيقافه عن طريق إرسال الأوامر المناسبة عبر MAX7219. وهذا يسمح بعرض شخصيات ورسومات متنوعة على المصفوفة.
تفاصيل ورقة البيانات
| المصنع | ماكسيم إنتغريتد |
|---|---|
| رقم الجزء | ماكس7219 |
| جهد المنطق/المدخلات والمخرجات | 3.3 فولت إلى 5.5 فولت |
| جهد الإمداد | 4.0 فولت إلى 5.5 فولت |
| التيار الناتج (لكل قناة) | 40 مللي أمبير كحد أقصى |
| التيار الذروي (لكل قناة) | 100 مللي أمبير كحد أقصى |
| إرشادات تردد PWM | 100 هرتز |
| عتبات منطق الإدخال | 2.0 فولت (مرتفع) / 0.8 فولت (منخفض) |
| انخفاض الجهد / Rدي إس (أون)/ تشبع | 0.2 فولت تقريباً |
| الحدود الحرارية | ١٥٠°م |
| حزمة | 16-DIP |
| ملاحظات / متغيرات | تكوين الأنود المشترك |
- تأكد من توفير الطاقة بشكل صحيح (4.0 فولت إلى 5.5 فولت).
- استخدم مقاومات محددة للتيار لكل LED لمنع التلف.
- احتفظ بالأسلاك قصيرة لتجنب التداخل.
- راقب تبديد الحرارة؛ استخدم مبردًا إذا لزم الأمر.
- تحقق مرة أخرى من اتصالات الدبابيس لتجنب سوء التواصل.
تعليمات التوصيل
لتوصيل MAX7219 بـ Arduino، قم بتوصيل الدبابيس التالية:
- اتصل بـ
VCCدبوس MAX7219 إلى 5 فولت من الأردوينو. - اتصل بـ
GNDقم بتوصيل الدبوس بالأرضي للاردوينو. - اتصل بـ
DINقم بتوصيل الدبوس (البيانات الداخلة) إلى دبوس أردوينو 12. - اتصل بـ
CLKقم بتوصيل الدبوس (الساعة) بدبوس أردوينو 11. - اتصل بـ
CSقم بتوصيل دبوس (اختيار الشريحة) بدبوس 10 في الأردوينو.
تأكد من التحقق من أن جميع الاتصالات آمنة قبل تشغيل الدائرة. الأسلاك بسيطة، ولكن إذا واجهت مشاكل، راجع الاتصالات بعناية (في الفيديو عند 1:45).
أمثلة الشيفرة وشرح الخطوات
في الكود، نبدأ بتضمين مكتبة LedControl، التي تعتبر أساسية للتواصل مع MAX7219. المقتطف التالي يقوم بتهيئة كائن LedControl:
LedControl lc=LedControl(12,11,10,1);تحدد هذه السطر دبوس البيانات، دبوس الساعة، دبوس اختيار الشريحة، وعدد الأجهزة (1، في هذه الحالة). بعد ذلك، في الـsetup()نقوم بتشغيل MAX7219 ونضبط شدة العرض:
lc.shutdown(0,false);
lc.setIntensity(0,8);
lc.clearDisplay(0);هذا يضمن أن الشاشة نشطة وجاهزة لعرض الأحرف. الوظيفة الرئيسية التي تدفع الشاشة هيwriteArduinoOnMatrix()، الذي يضيء صفوف المصفوفة بالتتابع لعرض الحروف.
عرض / ماذا تتوقع
بمجرد توصيل كل شيء وتحميل الكود، يجب أن تعرض مصفوفة LED كلمة "ROBOJAX". إذا لم يعمل العرض، تحقق من المشكلات مثل الاتصالات غير المحكمة أو تعيينات الدبابيس غير الصحيحة. بالإضافة إلى ذلك، تأكد من أن مصدر الطاقة كافٍ (في الفيديو عند 2:30).
فصول
- مقدمة (0:00)
- نظرة عامة على الأجهزة (0:30)
- تعليمات التوصيل (1:45)
- جولة في الشيفرة (2:15)
- عرض (3:00)
الموارد والمراجع
-
توثيقعرض تخصيص دبابيس اللوحة المختلفة لـ SPIarduino.cc
-
خارجي
ملفات📁
لا توجد ملفات متاحة.