في هذه الجلسة ، سنقوم بتصميم شاشة 8x8 LED مع مصفوفة 8x8 LED وجهاز تحكم دقيق ATmega8 ، والذي يمكنه إظهار الحروف الهجائية أو الأسماء. يتم عرض مصفوفة 8x8 النموذجية أدناه:
تحتوي مصفوفة 8x8 LED على 64 LED (الثنائيات الباعثة للضوء) مرتبة في شكل مصفوفة ، ومن هنا جاء اسم مصفوفة LED. يمكن عمل هذه المصفوفات بدائرة 64 LED ؛ لكن هذه العملية تستغرق وقتًا طويلاً. وهي متوفرة الآن في أشكال مدمجة كما هو موضح في الشكل. تتوفر هذه الوحدات المدمجة بأحجام مختلفة والعديد من الألوان. يمكن للمرء أن يختارها على راحته.
تكلفة الوحدة هي نفس تكلفة 64 LED ، لذلك من الأسهل بالنسبة للهواة العمل عليها. تكوين PIN للوحدة كما هو موضح في الشكل. يجب أن تكون أرقام التعريف الشخصية رقمًا تمامًا كما هو موضح في الصورة لتجنب الأخطاء. سنناقش تكوين الدائرة الداخلية للوحدة بالتفصيل في الوصف.
مكونات
الأجهزة: ATMEGA8 ، مزود الطاقة (5 فولت) ، AVR-ISP PROGRAMMER ، مكثف 100 uF (متصل عبر مزود الطاقة) ، مقاوم 1KΩ (8 قطع).
البرنامج: Atmel studio 6.1، progisp or flash magic.
مخطط الدائرة والعمل
يظهر الشكل أدناه التوصيلات التي تمت بين ATMEGA8 ووحدة مصفوفة LED.
PORTD ، PIN0 ------------------ PIN13 لوحدة LED
PORTD ، PIN1 ------------------ PIN03 لوحدة LED
PORTD ، PIN2 ------------------ PIN04 لوحدة LED
PORTD ، PIN3 ------------------ PIN10 لوحدة LED
PORTD ، PIN4 ------------------ PIN06 لوحدة LED
PORTD ، PIN5 ------------------ PIN11 لوحدة LED
PORTD ، PIN6 ------------------ PIN15 لوحدة LED
PORTD ، PIN7 ------------------ PIN16 لوحدة LED
PORTB ، PIN0 ------------------ PIN09 لوحدة LED
PORTB ، PIN1 ------------------ PIN14 لوحدة LED
PORTB ، PIN2 ------------------ PIN08 لوحدة LED
PORTB ، PIN3 ------------------ PIN12 لوحدة LED
PORTC ، PIN0 ------------------ PIN01 لوحدة LED
PORTC ، PIN1 ------------------ PIN07 لوحدة LED
PORTC ، PIN2 ------------------ PIN02 لوحدة LED
PORTC ، PIN3 ------------------ PIN05 من وحدة LED
يظهر الرسم التخطيطي لدائرة عرض مصفوفة 8x8 LED في الشكل أدناه.
يوجد 64 LED مرتبة في شكل مصفوفة. إذن لدينا 8 أعمدة و 8 صفوف كما هو موضح في الشكل. فوق تلك الصفوف والأعمدة ، يتم تجميع كل المحطات الموجبة في صف معًا. لكل صف ، يوجد طرف موجب واحد مشترك لجميع المصابيح الثمانية في هذا الصف. يظهر في الشكل أدناه ،
إذن ، بالنسبة لثمانية صفوف ، لدينا 8 أطراف موجبة مشتركة ، انظر إلى الصف الأول. كما يتضح من الصورة ، فإن مصابيح LED من D1 إلى D8 لها طرف موجب مشترك ويتم إخراجها من وحدة LED مثل PIN9.
يجب ملاحظة أن جميع الإيجابيات الشائعة للصفوف لا يتم إخراجها من وحدة LED بطريقة منظمة. هناك مخالفة كبيرة في المحطات المشتركة في كل حالة. يجب على المرء أن يضع ذلك في الاعتبار أثناء توصيل الجهاز.
قل ما إذا كنا نريد تشغيل أي واحد أو كل مصابيح LED في الصف الأول من المصفوفة ، فيجب علينا تشغيل PIN9 لوحدة LED MATRIX MODULE وليس PIN0.
قل ما إذا كنا نريد تشغيل أي واحد أو كل مصابيح LED في الصف الثالث من المصفوفة ، فيجب علينا تشغيل PIN8 لوحدة LED MATRIX MODULE وليس PIN2.
لذلك عندما نريد تشغيل واحد أو كل مصابيح LED في الصف ، يتم تشغيل الدبوس المقابل لوحدة LED.
هذا لم ينته بعد بمجرد ترك السلطة ROWS لا ينتج عنها شيء. نحن بحاجة لتأسيس الطرف الآخر سنناقشه أدناه.
الآن في هذا المثال ، نتجاهل الصفوف الإيجابية الشائعة ونركز على الأعمدة السلبية الشائعة.
لذلك في هذه الوحدة ، يتم تجميع جميع المحطات السالبة للعمود الأول معًا في PIN13. هذا موضح في الشكل أدناه.
هنا أيضًا يوجد عدم انتظام في PIN OUTAGE للوحدة. يظهر العمود الأول من مصابيح LED السلبية الشائعة في PIN13. يتم عرض المصابيح السلبية الشائعة للعمود الثاني في PIN3.
يجب على المرء الانتباه إلى المسامير أثناء الاتصال. الآن في حالة تأريض أي واحد أو كل مؤشرات LEDS الموجودة في العمود الأول ، يجب تأريض PIN13 من MATRIX MODULE. بهذه الطريقة تنتقل جميع الأعمدة السالبة السبعة الأخرى. عندما يتم وضع كلتا الحالتين معًا ، نواجه دائرة كما هو موضح أدناه ،
الدائرة أعلاه هي الرسم التخطيطي الداخلي الكامل لوحدة LED. لنفترض أنه إذا كنا نريد تشغيل LED D10 في المصفوفة ، فنحن بحاجة إلى تشغيل PIN14 للوحدة وتثبيت PIN3 على الوحدة. مع هذا ، سيتم تشغيل D10. هذا هو مبين في الشكل أدناه. يجب أن يكون هذا أولاً التحقق من MATRIX لمعرفة كل شيء بالترتيب.
لنفترض أنه إذا كنا نريد تشغيل D1 ، فنحن بحاجة إلى تشغيل PIN9 للمصفوفة وتثبيت PIN13. مع هذا سوف يتوهج LED D1. يظهر الاتجاه الحالي لهذه الحالة في الشكل أدناه.
الآن بالنسبة للجزء الصعب ، ضع في اعتبارك أننا نريد تشغيل كل من D1 و D10 في وقت واحد. لذلك نحن نقوم بتشغيل كل من PIN9 و PIN14 والأرضي كل من PIN13 و PIN3. مع ذلك ، سيكون لدينا D2 و D9 ON مع D1 و D10. ذلك لأنهم يتشاركون محطات مشتركة. لذلك إذا أردنا تشغيل مصابيح LED على طول القطر ، فسنضطر إلى تشغيل جميع مصابيح LED على طول الطريق. هذا موضح في الشكل أدناه.
لذلك للقضاء على هذه المشكلة ، سنقوم بتشغيل واحدة فقط في كل مرة. قل عند t = 0m SEC ، يتم ضبط LED D1 على وضع التشغيل. عند t = 1m SEC ، يتم ضبط LED D1 على وضع إيقاف التشغيل ويتم تشغيل LED D2. مرة أخرى عند t = 2 m SEC ، يتم إيقاف تشغيل LED D2 ويتم تشغيل LED D1. يستمر هذا.
الحيلة الآن هي أن العين البشرية لا يمكنها التقاط تردد يزيد عن 30 هرتز. هذا إذا تم تشغيل وإيقاف تشغيل LED بشكل مستمر بمعدل 30 هرتز أو أكثر. ترى العين أن مؤشر LED يعمل باستمرار. ولكن هذا ليس هو الحال. سيتم تشغيل وإيقاف LED باستمرار. هذه التقنية تسمى مضاعفة الإرسال.
باستخدام مضاعفة الإرسال ، سندير صفًا واحدًا فقط في كل مرة ، وسيكون هناك دوران حول الصفوف الثمانية باستمرار. هذا تصور كمصفوفة تشغيل كاملة للعين المجردة.
لنفترض الآن أننا نريد عرض "أ" على المصفوفة.
كما قيل ، سنقوم بتشغيل صف واحد في لحظة ،
عند t = 0m SEC ، تم تعيين PIN09 على HIGH (دبابيس ROW الأخرى منخفضة في هذا الوقت) في هذا الوقت ، يتم تأريض PIN3 و PIN4 و PIN10 و PIN6 و PIN11 و PIN15 (دبابيس COLUMN الأخرى مرتفعة في هذا الوقت)
عند t = 1m SEC ، يتم تعيين PIN14 على HIGH (دبابيس ROW الأخرى منخفضة في هذا الوقت) في هذا الوقت ، PIN13 ، PIN3 ، PIN4 ، PIN10 ، PIN6 ، PIN11 ، PIN15 ، PIN16 مؤرضة (دبابيس COLUMN الأخرى مرتفعة في هذا الوقت)
عند t = 2m SEC ، تم تعيين PIN08 على HIGH (دبابيس ROW الأخرى منخفضة في هذا الوقت) في هذا الوقت ، يتم تأريض PIN13 و PIN3 و PIN15 و PIN16 (دبابيس COLUMN الأخرى مرتفعة في هذا الوقت)
عند t = 3m SEC ، يتم تعيين PIN12 على HIGH (دبابيس ROW الأخرى منخفضة في هذا الوقت) في هذا الوقت ، يتم تأريض PIN13 و PIN3 و PIN15 و PIN16 (دبابيس COLUMN الأخرى عالية في هذا الوقت)
عند t = 4m SEC ، يتم تعيين PIN01 على HIGH (دبابيس ROW الأخرى منخفضة في هذا الوقت) في هذا الوقت ، PIN13 ، PIN3 ، PIN4 ، PIN10 ، PIN6 ، PIN11 ، PIN15 ، PIN16 مؤرضة (دبابيس COLUMN الأخرى مرتفعة في هذا الوقت)
في t = 5m SEC ، يتم تعيين PIN07 على HIGH (دبابيس ROW الأخرى منخفضة في هذا الوقت) في هذا الوقت ، يتم تأريض PIN13 و PIN3 و PIN4 و PIN10 و PIN6 و PIN11 و PIN15 و PIN16 (دبابيس COLUMN الأخرى مرتفعة في هذا الوقت)
عند t = 6m SEC ، يتم تعيين PIN02 على HIGH (دبابيس ROW الأخرى منخفضة في هذا الوقت) في هذا الوقت ، يتم تأريض PIN13 و PIN3 و PIN15 و PIN16 (دبابيس COLUMN الأخرى مرتفعة في هذا الوقت)
عند t = 7m SEC ، تم تعيين PIN05 على HIGH (دبابيس ROW الأخرى منخفضة في هذا الوقت) في هذا الوقت ، يتم تأريض PIN13 و PIN3 و PIN15 و PIN16 (دبابيس COLUMN الأخرى عالية في هذا الوقت)
بهذه السرعة ، سيُنظر إلى الشاشة على أنها تعرض الحرف "أ" باستمرار. يظهر في الشكل.
هذه هي الطريقة التي تظهر بها جميع الشخصيات في العرض. بعد توصيل الدائرة بالطريقة الصحيحة ، كما هو موضح في مخطط الدائرة. يمكننا إعطاء تعليمات وحدة التحكم مباشرة لإجراء مضاعفة الإرسال بطريقة منظمة لعرض الاسم.