افعل ذلك بنفسك شعاع من مصفوفة LED. مصفوفات LED القابلة للعنونة

في بعض الأحيان يكون مطلوبًا توصيل عدة مؤشرات من سبعة أجزاء أو مصفوفة LED بالمتحكم الدقيق ، بينما يتم استخدام المؤشر الديناميكي لعرض المعلومات. جوهر البيان الديناميكي هو العرض المتتالي للمعلومات على المؤشرات. يوضح الرسم البياني أدناه مثالاً لربط عدة مؤشرات من سبعة أجزاء (على سبيل المثال ، مع الكاثود المشترك) لتنفيذ مؤشر ديناميكي ، بشكل عام ، مع مراعاة النقطة ، يتم الحصول على 8 أجزاء ، ولكن بالطريقة القديمة هي تسمى بهذه الطريقة. جميع استنتاجات (الأنودات) للأجزاء التي تحمل الاسم نفسه متصلة ببعضها البعض ، ليصبح المجموع 8 خطوط متصلة بالمتحكم الدقيق من خلال المقاومات. يتم توصيل الكاثود المشترك لكل مؤشر بالمتحكم الدقيق من خلال الترانزستور.


تكون خوارزمية الإشارة على النحو التالي: أولاً ، نقوم بتعيين المستويات المنطقية المطلوبة على الخطوط ، اعتمادًا على الأجزاء التي يجب تشغيلها في المؤشر الأول (الإشارة من اليسار إلى اليمين) ، مع مستوى منطقي عالٍ للتشغيل ، ومنخفض إلى قم بإيقاف تشغيل الجزء. بعد ذلك ، نطبق مستوى منطقيًا عاليًا على قاعدة الترانزستور VT1 ، وبالتالي يتم توصيل الكاثود المشترك للمؤشر الأول بالسلك المشترك ، في هذه اللحظة تضيء هذه الأجزاء ، على الأنودات التي توجد بها وحدة منطقية. خلال وقت محدد(وقفة) قم بإيقاف تشغيل المؤشر عن طريق تطبيق مستوى منطقي منخفض على قاعدة الترانزستور ، ثم قم مرة أخرى بتغيير المستويات المنطقية على الخطوط وفقًا لمعلومات الإخراج المخصصة للمؤشر الثاني ، وقم بتطبيق إشارة تشغيل على الترانزستور VT2.0 وهكذا ، بالترتيب في دورة دائرية ، نقوم بتبديل جميع المؤشرات ، وهذا هو المؤشر الديناميكي بأكمله.

للحصول على صورة صلبة دون وميض ، يجب إجراء التبديل بسرعة عالية ، لمنع وميض مصابيح LED ، يجب ضبط معدل التحديث من 70 هرتز أو أكثر ، وعادةً ما أقوم بضبطه على 100 هرتز. بالنسبة للبناء أعلاه ، يتم حساب التوقف المؤقت على النحو التالي: بالنسبة للتردد 100 هرتز ، تكون الفترة 10 مللي ثانية ، وهناك 4 مؤشرات فقط ، على التوالي ، يتم ضبط وقت التوهج لكل مؤشر على 10/4 = 2.5 مللي ثانية. توجد مؤشرات متعددة الأجزاء من سبعة أرقام في مسكن واحد ، حيث يتم توصيل الأجزاء التي تحمل الاسم نفسه داخل السكن نفسه ، بالطبع ، لاستخدامها ، من الضروري استخدام مؤشر ديناميكي.

لتنفيذ المؤشر الديناميكي ، من الضروري استخدام المقاطعات في تجاوز أحد العدادات. يوجد أدناه الرمز باستخدام مؤقت TMR0:

؛ تنفيذ المؤشر الديناميكي لأربعة مؤشرات من سبعة قطاعات ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ swapf الحالة ، W ؛ حالة clrf ؛ movwf STATUS_TEMP ؛ ؛ bcf ind1 ؛ إيقاف تشغيل المؤشر الأول bcf ind2 ؛ إيقاف تشغيل المؤشر الثاني bcf ind3 ؛ إيقاف تشغيل المؤشر الثالث bcf ind4 ؛ إيقاف تشغيل المؤشر الرابع ؛ بما في ذلك shet ، F ؛ سجل الزيادة shet movlw .5 ؛ تحقق من محتويات التسجيل shet xorwf shet ، W ؛ تحقق مما إذا كان يساوي 5 btfss STATUS ، Z ؛ goto met1 ؛ الرقم في سجل shet لا يساوي 5 movlw .1 ؛ الرقم في سجل shet هو 5: اكتب رقم 1 movwf shet ؛ في سجل shet ؛ met1 movlw .1 ؛ تحقق من محتويات التسجيل shet xorwf shet ، W ؛ يساوي الرقم 1 btfss STATUS ، Z ؛ goto met2 ؛ الرقم في سجل shet لا يساوي 1: الانتقال إلى met2 movf datind1، W ؛ الرقم في سجل shet يساوي 1: نسخ movwf PORTB ؛ محتويات التاريخ 1 سجل في PORTB register bsf ind1 ؛ قم بتشغيل المؤشر الأول met2 movlw .2 ؛ تحقق من محتويات السجل shet xorwf shet ، W ؛ يساوي 2 btfss STATUS ، Z ؛ goto met3 ؛ الرقم في سجل shet لا يساوي 2: الانتقال إلى met3 movf datind2، W ؛ الرقم في سجل shet هو 2: نسخ movwf PORTB ؛ محتويات datind2 سجل في PORTB register bsf ind2 ؛ قم بتشغيل المؤشر الثاني goto exxit ؛ انتقل إلى التسمية exxit met3 movlw .3 ؛ تحقق من محتويات التسجيل shet xorwf shet، W ؛ يساوي 3 btfss STATUS، Z ؛ goto met4 ؛ الرقم في سجل shet لا يساوي 3: الانتقال إلى met4 movf datind3، W ؛ الرقم في سجل shet هو 3: نسخ movwf PORTB ؛ محتويات datind3 التسجيل في PORTB register bsf ind3 ؛ تشغيل المؤشر الثالث goto exxit ؛ الانتقال إلى التسمية exxit met4 movf datind4، W ؛ نسخ محتويات سجل datind3 movwf PORTB ؛ إلى سجل PORTB bsf ind4 ؛ قم بتشغيل المؤشر الرابع ؛ movlw .100 ؛ اكتب 156 إلى سجل المؤقت TMR0 movwf TMR0 ؛ ؛ حالة movwf ؛ مبادلة W_TEMP ، F ؛ مبادلة W_TEMP ، W ؛ ؛ ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛ البرنامج الرئيسي ... clrf shet ؛ إعادة تعيين سجل shet ، قبل البدء ؛ المقاطعات على الفائض TMR0 ، تم إجراؤها ؛ clrf datind1 ؛ مسح السجلات لإخراج المعلومات إلى clrf datind2 ؛ المؤشرات ، تعادل إيقاف clrf datind3 ؛ المؤشرات ، كمؤشرات مع تاريخ clrf مشترك 4 ؛ الكاثود ؛ bcf INTCON ، T0IF ؛ مسح علامة TMR0 overflow bsf INTCON ، T0IE ؛ تمكين المقاطعات الفائضة TMR0 bsf INTCON ، GIE ؛ تمكين المقاطعات العالمية ؛ movlw b "00000110" ؛ 13.52 مثال الإخراج movwf datind1 ؛ movlw b "11001111" ؛ movwf مؤرخ 2 ؛ movlw b "01101101" ؛ movwf مؤرخ 3 ؛ movlwb "01011011" ؛ movwf مؤرخ 4 ؛ ؛ . ................ ................. ................. ؛ نهاية ؛ نهاية البرنامج بأكمله ؛

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

؛ تنفيذ مؤشر ديناميكي لأربعة مؤشرات من سبعة قطاعات

؛ مثال على تردد الساعة 4 ميجا هرتز ، دورة الماكينة 1 ميكرو ثانية

org 0000h ؛ بدء تنفيذ البرنامج على العنوان 0000h

انتقل إلى البداية ؛ انتقل إلى التسمية "ابدأ"

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

؛ مقاطعة الروتين

org 0004h ؛ ابدأ تنفيذ الروتين الفرعي على العنوان 0004h

movwf W_TEMP ؛ حفظ قيم التسجيل الرئيسية

swapf الحالة ، W ؛

movwf STATUS_TEMP ؛

bcf ind1 ؛ قم بإيقاف تشغيل المؤشر الأول

bcf ind2 ؛ قم بإيقاف تشغيل المؤشر الثاني

bcf ind3 ؛ قم بإيقاف تشغيل المؤشر الثالث

bcf ind4 ؛ قم بإيقاف تشغيل المؤشر الرابع

بما في ذلك Shet ، F ؛ زيادة تسجيل شيت

movlw .5 ؛ تحقق من محتويات سجل shet

xorwf shet ، W ؛ يساوي 5

حالة btfss ، Z ؛

goto met1 ؛ الرقم في التسجيل shet لا يساوي 5

movlw .1 ؛ الرقم في سجل shet هو 5: اكتب الرقم 1

موفوف شيت ؛ لتسجيل شيت

met1 movlw .1 ؛ تحقق من محتويات سجل shet

xorwf shet ، W ؛ يساوي الرقم 1

حالة btfss ، Z ؛

goto met2 ؛ الرقم في سجل shet لا يساوي 1: الانتقال إلى met2

movf datind1، W ؛ الرقم في سجل shet هو 1: نسخة

movwf PORTB ؛ تسجل محتويات datind1 في سجل PORTB

bsf ind1 ؛ قم بتشغيل المؤشر الأول

اذهب إلى exxit ؛ انتقل إلى التسمية exxit

met2 movlw .2 ؛ تحقق من محتويات سجل shet

xorwf shet ، W ؛ يساوي الرقم 2

حالة btfss ، Z ؛

goto met3 ؛ الرقم في سجل shet لا يساوي 2: الانتقال إلى met3

movf datind2، W ؛ الرقم في سجل shet هو 2: نسخة

movwf PORTB ؛ تسجل محتويات datind2 في سجل PORTB

bsf ind2 ؛ قم بتشغيل المؤشر الثاني

اذهب إلى exxit ؛ انتقل إلى التسمية exxit

met3 movlw .3 ؛ تحقق من محتويات سجل shet

xorwf shet ، W ؛ يساوي الرقم 3

حالة btfss ، Z ؛

goto met4 ؛ الرقم في سجل shet لا يساوي 3: الانتقال إلى met4

movf datind3، W ؛ الرقم في سجل shet هو 3: نسخة

movwf PORTB ؛ تسجل محتويات datind3 في سجل PORTB

bsf ind3 ؛ قم بتشغيل المؤشر الثالث

اذهب إلى exxit ؛ انتقل إلى التسمية exxit

met4 movf datind4، W ؛ نسخ محتويات سجل datind3

movwf PORTB ؛ لتسجيل PORTB

bsf ind4 ؛ قم بتشغيل المؤشر الرابع

exxit bcf INTCON ، T0IF ؛ إعادة تعيين علامة مقاطعة تجاوز التدفق TMR0

movlw .100 ؛ اكتب الرقم 156 لتسجيل المؤقت TMR0

swapf STATUS_TEMP، W ؛ استعادة محتويات سجلات المفاتيح

مبادلة W_TEMP ، F ؛

مبادلة W_TEMP ، W ؛

retfie ؛ الخروج من روتين المقاطعة

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

؛البرنامج الرئيسي

يبدأ ................. ؛ الإعداد الأوليالسجلات

.................؛ الغرض الخاص

.................

bsf STATUS، RP0 ؛ اكتب الرقم الثنائي 11010011 للتسجيل

movlw b "11010011" ؛ OPTION_REG ، وبذلك يتم ضبط الداخلي

movwf OPTION_REG ؛ مصدر الساعة لـ TMR0

bcf STATUS، RP0 ؛ قم بتمكين أداة القياس المسبق قبل TMR0

؛ تعيين نسبة prescaler إلى 1:16

clrf shet ؛ إعادة تعيين سجل shet قبل البدء

؛ تجاوز المقاطعة TMR0 ، المنفذة

؛ مرة واحدة بعد السلطة

clrf datind1 ؛ مسح السجلات لإخراج المعلومات إلى

clrf datind2 ؛ مؤشرات تعادل إيقاف التشغيل

clrf datind3 ؛ المؤشرات ، منذ مؤشرات مشتركة

clrf التاريخ 4 ؛ الكاثود

bcf INTCON ، T0IF ؛ إعادة تعيين علامة مقاطعة تجاوز التدفق TMR0

bsf INTCON ، T0IE ؛ تمكين المقاطعات الفائضة TMR0

bsf INTCON ، GIE ؛ تمكين المقاطعات العالمية

movlw b "00000110" ؛ مثال الإخراج 13.52

movlw b "11001111" ؛

movlw b "01101101" ؛

movlwb "01011011" ؛

................. ;

................. ;

................. ;

النهاية ؛ نهاية البرنامج بأكمله

في البرنامج الرئيسي ، قمنا أولاً بإعداد مؤقت باستخدام سجل OPTION_REG ، وقد تحدثت سابقًا عن استخدام أجهزة ضبط الوقت. بعد ذلك ، نقوم بمسح سجل shet ، المخصص لإدخال عدد من 1 إلى 4 ، لكل مؤشر. تتم زيادة هذا السجل في روتين خدمة المقاطعة ويتم تعديله هناك (سيحسب من 1 إلى 4) ، لذلك يتم إجراء هذا المقاصة مرة واحدة بعد التشغيل. بناءً على هذا السجل ، سنحدد المؤشر الذي سيتم تضمينه وإصدار البيانات المقابلة له. الخطوة التالية هي مسح سجلات تخزين المعلومات ، سجلات البيانات الأربعة 1 ، 2 ، 3 ، 4 المقابلة للمؤشرات الأربعة. المقاصة تعادل إيقاف تشغيل المؤشرات ، لأنه في روتين خدمة المقاطعة ، يتم نقل محتويات هذه السجلات إلى سجل PORTB ، الذي يتم توصيل أنودات المؤشر به. يعد ذلك ضروريًا حتى لا يتم عرض أي بيانات غير صحيحة على المؤشرات بعد تمكين المقاطعات ، ومن حيث المبدأ لا يمكن القيام بذلك إذا كتبت على الفور معلومات صحيحةللإخراج. بعد ذلك ، قم بإعادة تعيين علامة مقاطعة تجاوز سعة المؤقت ، وقم بتمكين المقاطعات تجاوز السعة TMR0 ، ثم قم أخيرًا بتمكين المقاطعات العامة.

في روتين المقاطعة ، نقوم أولاً بإيقاف تشغيل جميع المؤشرات (عن طريق تطبيق مستويات منطقية منخفضة على قواعد الترانزستورات) ، لأنه من غير المعروف أيها يعمل. نقوم بزيادة سجل shet ، والتحقق من المساواة مع الرقم 5 ، إذا كان هناك مثل هذا التطابق ، اكتب الرقم 1 في السجل ، لأنه من الضروري العد من 1 إلى 4. بعد ذلك ، نتحقق من الرقم الموجود في shet سجل ، والذي من خلاله نقوم بتحميل البيانات من PORTB إلى سجلات تخزين معلومات PORTB (dataind) للمؤشر المقابل وتشغيله. بعد ذلك ، نقوم بإعادة تعيين علامة المقاطعة الفائضة TMR0 ، وكتابة الرقم 100 في المؤقت (تم حساب هذه القيمة أدناه) ، لتأخير الوقت ، والخروج من معالج المقاطعة. في المقاطعة الأولى ، يتم تشغيل المؤشر الأول ، عند المقاطعة الثانية ، في الثانية ، وهكذا في دورة دائرية. في البرنامج الرئيسي ، يبقى فقط تحميل البيانات في سجلات تخزين المعلومات لكل مؤشر. في روتين المقاطعة ، لا تنس حفظ واستعادة قيم سجلات المفاتيح ، لقد كتبت عن هذا في مقال حول.

لإخراج الأرقام ، من الأفضل استخدام منشئ الأحرف في شكل جدول بيانات. على سبيل المثال ، لعرض الرقم 3456 على المؤشرات ، يجب تقسيمه إلى أرقام ، في حين أنه من الأفضل استخدام سجلات منفصلة لتخزين أرقام الأرقام (من 0 إلى 9) ، ثم تشغيل هذه السجلات من خلال منشئ الأحرف ، وبالتالي الحصول على وحدات البايت الصحيحة (المحملة في سجلات البيانات) لإشعال الأجزاء المعنية.

سنأخذ تردد مولد الساعة على أنه 4 ميغا هرتز ، ودورة الماكينة هي 1 ميكرو ثانية. اجعل معدل التحديث لكل مؤشر 100 هرتز (الفترة T = 10 مللي ثانية) ، على التوالي ، التأخير الزمني المطلوب هو 10/4 = 2.5 مللي ثانية. تم تعيين عامل المقياس المسبق لـ TMR0 على 1:16 ، بينما أقصى تأخير ممكن هو 256 × 16 = 4096 ميكرو ثانية ، ونحتاج إلى وقفة بمقدار 2.5 مللي ثانية. لنحسب الرقم المراد كتابته على TMR0: 256 - ((256x2.5) /4.096) = 256-156.25 = 99.75. بعد التقريب ، نحصل على الرقم 100.

يمكنك أدناه تنزيل نموذج لبرنامج Proteus والبرامج الثابتة وكود المصدر مع تنفيذ مؤشر ديناميكي على مؤشر مكون من 4 أرقام مع كاثود مشترك باستخدام متحكم PIC16F628A. على سبيل المثال ، يتم عرض الأرقام 0000 على المؤشر ؛ 0001 ؛ 0002 ؛ 13.52 ؛ 9764.

فكر الآن في توصيل مصفوفة بدقة 8x8 بكسل (LED). عادة ما يتم النظر إلى بنية المصفوفة من حيث الصفوف والأعمدة. في الصورة أدناه ، في كل عمود ، يتم توصيل كاثودات جميع مصابيح LED ، وفي كل صف ، الأنودات. يتم توصيل الأوتار (8 خطوط ، أنودات LED) من خلال المقاومات بالمتحكم الدقيق. يتم توصيل كل عمود (كاثودات LED) بالمتحكم الدقيق من خلال 8 ترانزستورات. خوارزمية الإشارة هي نفسها ، أولاً قمنا بتعيين المستويات المنطقية اللازمة على الصفوف ، وفقًا لمصابيح LED التي يجب أن تضيء في العمود ، ثم نقوم بتوصيل العمود الأول (الإشارة من اليسار إلى اليمين). بعد فترة توقف معينة ، نقوم بإيقاف تشغيل العمود ، وتغيير المستويات المنطقية على الأسطر لعرض العمود الثاني ، ثم نقوم بتوصيل العمود الثاني. وهكذا بالتناوب على جميع الأعمدة. يوجد أدناه رسم تخطيطي لتوصيل المصفوفة بالمتحكم الدقيق.


في المجموع ، لتوصيل مثل هذه المصفوفة ، يلزم وجود 16 دبوسًا متحكمًا ، وهو عدد كبير جدًا ، لذلك ، لتقليل خطوط التحكم ، من الأفضل استخدام سجلات التحول التسلسلي.

السجل التسلسلي الأكثر شيوعًا هو الدائرة الدقيقة 74HC595 ، والتي تحتوي على سجل التحوللتحميل البيانات ، وسجل الحفظ الذي يتم من خلاله نقل البيانات إلى خطوط الإخراج. تحميل البيانات فيه بسيط ، اضبط القيمة المنطقية 0 عند إدخال الساعة SH_CP ، ثم اضبط المستوى المنطقي المطلوب عند إدخال بيانات DS ، وبعد ذلك نحول إدخال الساعة إلى 1 ، مع حفظ قيمة المستوى (عند إدخال DS) داخل سجل المناوبة. في نفس الوقت ، يتم نقل البيانات بمقدار بت واحد. أعد تعيين إخراج SH_CP إلى 0 مرة أخرى ، واضبط المستوى المطلوب عند إدخال DS وارفع SH_CP إلى 1. بعد تحميل سجل التحول بالكامل (8 بتات) ، اضبط إخراج ST_CP على 1 ، في هذه اللحظة يتم نقل البيانات إلى سجل التخزين وتغذيته بخطوط الإخراج Q0 ... Q7 ، وبعد ذلك نقوم بإعادة ضبط إخراج ST_CP. أثناء التحميل المتسلسل ، يتم نقل البيانات من Q0 إلى Q7. يتم توصيل Pin Q7 'بالجزء الأخير من سجل الإزاحة ، ويمكن توصيل هذا الدبوس بإدخال الدائرة المصغرة الثانية ، بحيث يمكنك تحميل البيانات في دائرتين أو أكثر في وقت واحد. يقوم دبوس OE بتبديل خطوط الإخراج إلى الحالة الثالثة (عالية المقاومة) عندما يتم تطبيق المنطق 1 عليها. تم تصميم دبوس MR لإعادة ضبط سجل الإزاحة ، أي تحديد مستويات منطقية منخفضة عند مخرجات مشغلات السجل ، وهو ما يعادل تحميل ثمانية أصفار. يوجد أدناه رسم تخطيطي لتحميل البيانات في الدائرة الدقيقة 74NS595 ، مع تحديد القيمة 11010001 على خطوط الإخراج Q0 ... Q7 ، بشرط وجود أصفار في البداية:


ضع في اعتبارك توصيل مصفوفة 8 × 8 بوحدة تحكم دقيقة PIC16F628A باستخدام سجلي إزاحة 74HC595 ، يظهر الرسم البياني أدناه:


يتم تحميل البيانات في شريحة DD2 (التحكم في مستوى المنطق على الصفوف ، أنودات LED) ، ثم يتم نقلها من خلال دبوس Q7 إلى DD3 (التحكم في العمود) ، على التوالي ، نقوم أولاً بتحميل البايت لتمكين العمود ، ثم البايت مع المستويات المنطقية في الصفوف. أعمدة مصفوفة تبديل الترانزستورات (كاثودات LED) متصلة بخطوط إخراج DD3. يوجد أدناه رمز البرنامج لعرض صورة على مصفوفة:

؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛ تنفيذ مؤشر ديناميكي لمصفوفة بدقة 8x8 ؛ تردد مولد الساعة على سبيل المثال 4 ميجا هرتز ، دورة الماكينة 1 µs org 0000h ؛ بدء تنفيذ البرنامج من العنوان 0000h انتقل إلى البداية ؛ الانتقال إلى التسمية Start ؛؛؛؛؛؛ ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛ مقاطعة روتين org 0004h ؛ بدء تنفيذ الروتين الفرعي من العنوان 0004h movwf W_TEMP ؛ حفظ قيم تسجيل المفاتيح swapf STATUS، W ؛ حالة clrf ؛ movwf STATUS_TEMP ؛ ؛ movwf FSR_osn ؛ إلى FSR_osn تسجيل movf FSR_prer ، W ؛ استعادة القيمة المحفوظة مسبقًا movwf FSR ؛ لتسجيل FSR من تسجيل FSR_prer ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛ تحميل محتويات سجل stolb في رقاقة movf stolb ، W ؛ نسخ محتويات سجل stolb movwf var ؛ إلى السجل var met2 btfsc var ، 0 ؛ ضبط الإخراج ds وفقًا لـ btfss var ، 0 ؛ bcf دس bcf sh_cp ؛ rrf var، F؛ Shift Register var الحق في التحضير ؛ البتة التالية goto met2 ؛ scetbit لا تساوي الصفر: الانتقال إلى التسمية met2 ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛ تحميل محتويات سجل INDF في الشريحة ؛ 74HC595 (سجل التحول التسلسلي) movf INDF ، W ؛ نسخ محتويات سجل INDF movwf var ؛ إلى var register movlw .8 ؛ اكتب الرقم 8 في سجل scetbit ، لحساب movwf scetbit ؛ البتات المنقولة met1 btfsc var، 7 ؛ ضبط الإخراج ds وفقًا لـ bsf ds ؛ قيمة البتة السابعة من السجل var btfss var ، 7 ؛ bcf دس bsf sh_cp ؛ إخراج sh_cp على مدار الساعة لإغلاق البيانات bcf sh_cp ؛ rlf var، F؛ Shift register var اليسار للتحضير؛ البتة التالية decfsz scetbit، F؛ التناقص مع شرط التسجيل scetbit goto met1؛ scetbit لا يساوي الصفر: الانتقال إلى التسمية met1؛ bsf st_cp ؛ ساعة الإخراج st_cp لنقل bcf st_cp المحمل ؛ البايت إلى خطوط الإخراج للرقائق 74HC595 ؛ bcf STATUS ، C ؛ إعادة تعيين بت C لحالة التسجيل قبل التحول rrf stolb ، F ؛ سجل التحول الأيسر stolb ؛ بما في ذلك FSR ، F ؛ زيادة سجل FSR ، استعد بعد ذلك ؛ سجل لإرسال البيانات إلى 74HC595 decfsz shet ، F ؛ التناقص مع شرط التسجيل shet goto exxit ؛ سجل Shet لا يساوي 0: الانتقال إلى exxit movlw data1 ؛ سجل Shet يساوي 0: اكتب العنوان أولاً movwf FSR ؛ سجل لتخزين المعلومات في سجل FSR movlw .8 ؛ كتابة الرقم 8 في سجل shet للحفاظ على movwf shet ؛ عد الأعمدة ؛ exxit bcf INTCON ، T0IF ؛ إعادة تعيين علامة مقاطعة تجاوز التدفق TMR0 movlw. 124 ؛ اكتب الرقم 124 إلى سجل المؤقت TMR0 movwf TMR0 ؛ ؛ movf FSR ، W ؛ حفظ القيمة الحالية لـ FSR movwf FSR_prer ؛ إلى FSR_prer movf FSR_osn ، W ؛ استعادة القيمة المحفوظة مسبقًا movwf FSR ؛ FSR من FSR_osn ؛ swapf STATUS_TEMP، W ؛ استعادة محتويات سجلات المفاتيح movwf STATUS ؛ مبادلة W_TEMP ، F ؛ مبادلة W_TEMP ، W ؛ ؛ retfie ؛ الخروج من الروتين الفرعي للمقاطعة ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ ؛ بدء البرنامج الرئيسي ................؛ الإعداد الأولي للسجلات .................؛ الغرض الخاص ..... ............ bsf STATUS، RP0 ؛ اكتب الرقم الثنائي 11010011 في السجل movlw b "11010010" ؛ OPTION_REG ، وبالتالي ضبط movwf الداخلي OPTION_REG ؛ مصدر الساعة لـ TMR0 bcf STATUS ، RP0 ؛ تمكين prescaler من قبل TMR0 ؛ ضبط نسبة ما قبل المقياس 1: 8 ؛ movlw .8 ؛ اكتب 8 في سجل shet ، قبل تشغيل movwf shet ؛ تنفيذ المقاطعات الفائضة من TMR0 ؛ مرة واحدة ، بعد زيادة الطاقة ، movlw b "10000000" ؛ اكتب رقمًا ثنائيًا 10000000 إلى movwf stolb ؛ سجل stolb ، لتمكين العمود الأول ؛ تم تنفيذه مرة واحدة ، بعد السلطة ؛ بيانات movlw 1 ؛ اكتب عنوان السجل الأول (سجلات التخزين movwf FSR_prer ؛ المعلومات) في السجل FSR_prer ، المنجز ؛ مرة واحدة بعد التشغيل ؛ movlw .8 ؛ مسح 8 سجلات لإخراج المعلومات إلى movwf tmp ؛ مصفوفة تعادل إيقاف تشغيل بيانات movlw 1 ؛ مصفوفة movwf FSR ؛ met3 clrf INDF ؛ بما في ذلك FSR ، F ؛ decfsz tmp ، F ؛ غوتو ميت 3 ؛ bcf INTCON ، T0IF ؛ مسح علامة TMR0 overflow bsf INTCON ، T0IE ؛ تمكين المقاطعات الفائضة TMR0 bsf INTCON ، GIE ؛ تمكين المقاطعات العالمية ؛ m1 movlw data1 ؛ R مثال الإخراج movwf FSR ؛ movlw b "00000000" ؛ movwf INDF ؛ بما في ذلك FSR ، F ؛ movlw b "01111111" ؛ movwf INDF ؛ بما في ذلك FSR ، F ؛ movlwb "00001001" ؛ movwf INDF ؛ بما في ذلك FSR ، F ؛ movlwb "00011001" ؛ movwf INDF ؛ بما في ذلك FSR ، F ؛ movlwb "00101001" ؛ movwf INDF ؛ بما في ذلك FSR ، F ؛ movlw b "01000110" ؛ movwf INDF ؛ بما في ذلك FSR ، F ؛ movlw b "00000000" ؛ movwf INDF ؛ بما في ذلك FSR ، F ؛ movlw b "00000000" ؛ movwf INDF ؛ ؛ ................. ................. ................. ؛ نهاية ؛ نهاية البرنامج بأكمله ؛

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

؛ تنفيذ مؤشر ديناميكي لمصفوفة بدقة 8x8

؛ مثال على تردد الساعة 4 ميجا هرتز ، دورة الماكينة 1 ميكرو ثانية

org 0000h ؛ بدء تنفيذ البرنامج على العنوان 0000h

انتقل إلى البداية ؛ انتقل إلى التسمية "ابدأ"

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

؛ مقاطعة الروتين

org 0004h ؛ ابدأ تنفيذ الروتين الفرعي على العنوان 0004h

movwf W_TEMP ؛ حفظ قيم التسجيل الرئيسية

swapf الحالة ، W ؛

movwf STATUS_TEMP ؛

movf FSR ، W ؛ احفظ القيمة الحالية لسجل FSR

movwf FSR_osn ؛ لتسجيل FSR_osn

movf FSR_prer ، W ؛ استعادة القيمة المحفوظة مسبقًا

movwf FSR ؛ FSR من FSR_prer

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

؛ 74HC595 (سجل التحول التسلسلي)

movf stolb، W ؛ نسخ محتويات سجل stolb

movwf var ؛ للتسجيل var

movlw .8 ؛ اكتب رقم 8 في سجل scetbit للعد

movwf scetbit ؛ بتات مرسلة

met2 btfsc var ، 0 ؛ اضبط إخراج ds وفقًا لـ

bsf ds ؛ قيمة البتة السابعة للتسجيل var

bsf sh_cp ؛ إخراج sh_cp على مدار الساعة لتجميع البيانات

rrf var ، F ؛ سجل التغيير ، الحق في التحضير

؛ الجزء التالي

decfsz scetbit، F ؛ التناقص مع شرط التسجيل scetbit

goto met2؛ scetbit لا يساوي الصفر: انتقل إلى تسمية met2

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

؛ 74HC595 (سجل التحول التسلسلي)

movf INDF، W ؛ نسخ محتويات السجل INDF

movwf var ؛ للتسجيل var

movlw .8 ؛ اكتب رقم 8 في سجل scetbit للعد

movwf scetbit ؛ بتات مرسلة

met1 btfsc var، 7 ؛ اضبط إخراج ds وفقًا لـ

bsf ds ؛ قيمة البتة السابعة للتسجيل var

bsf sh_cp ؛ إخراج sh_cp على مدار الساعة لتجميع البيانات

rlf var ، F ؛ التحول الأيسر var للتحضير

؛ الجزء التالي

decfsz scetbit، F ؛ التناقص مع شرط التسجيل scetbit

goto met1؛ scetbit لا يساوي الصفر: انتقل إلى التسمية met1

bsf st_cp ؛ ساعة إخراج st_cp لنقل تحميلها

bcf st_cp ؛ بايت لكل 74HC595 سطر إخراج

bcf STATUS، C ؛ امسح C بت من سجل الحالة قبل التحول

rrf stolb ، F ؛ سجل التحول الأيسر ثابت

بما في ذلك FSR ، F ؛ زيادة سجل FSR ، استعد بعد ذلك

؛ سجل لإرسال البيانات إلى 74HC595

decfsz shet ، F ؛ التناقص مع شرط التسجيل shet

الانتقال إلى exxit ؛ التسجيل لا يساوي 0: الانتقال إلى exxit

movlw data1؛ shet register is 0: اكتب عنوان الأول

movwf FSR ؛ سجل لتخزين المعلومات في FSR

movlw .8 ؛ اكتب رقم 8 في سجل shet ، كمرجع

ورقة movwf ؛ عدد الأعمدة

movlw b "10000000" ؛ اكتب الرقم الثنائي 10000000 فيه

movwf stolb ؛ سجل stolb ، ليشمل العمود الأول

exxit bcf INTCON ، T0IF ؛ إعادة تعيين علامة مقاطعة تجاوز التدفق TMR0

movlw .124 ؛ اكتب الرقم 124 لتسجيل المؤقت TMR0

movf FSR ، W ؛ احفظ القيمة الحالية لسجل FSR

movwf FSR_prer ؛ لتسجيل FSR_prer

movf FSR_osn ، W ؛ استعادة القيمة المحفوظة مسبقًا

movwf FSR ؛ FSR من FSR_osn

swapf STATUS_TEMP، W ؛ استعادة محتويات سجلات المفاتيح

مبادلة W_TEMP ، F ؛

مبادلة W_TEMP ، W ؛

retfie ؛ الخروج من روتين المقاطعة

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

؛البرنامج الرئيسي

ابدأ ................. ؛ الإعداد الأولي للسجلات

.................؛ الغرض الخاص

.................

bsf STATUS، RP0 ؛ اكتب الرقم الثنائي 11010011 للتسجيل

movlw b "11010010" ؛ OPTION_REG ، وبالتالي ضبط الداخلي

movwf OPTION_REG ؛ مصدر الساعة لـ TMR0

bcf STATUS، RP0 ؛ قم بتمكين أداة القياس المسبق قبل TMR0

؛ اضبط نسبة المقياس المسبق على 1: 8

movlw .8 ؛ اكتب رقم 8 في سجل shet قبل الجري

movwf shet ؛ المقاطعات الفائضة TMR0 ، قيد التشغيل

؛ مرة واحدة بعد السلطة

movlw b "10000000" ؛ اكتب الرقم الثنائي 10000000 فيه

movwf stolb ؛ سجل stolb ، ليشمل العمود الأول

يتم تخزين المعلومات ذات المستويات المنطقية لصفوف كل عمود في 8 سجلات تخزين المعلومات ، والتي يمكن الوصول إليها من خلال. عنوان السجل الأول يسمى data1. بالإضافة إلى الكتابة الأولية لسجلات shet و stolb ، من الضروري كتابة عنوان سجل تخزين المعلومات الأول في سجل FSR_prer (السجل عبارة عن بيانات 1 ، ويتم الإدخال في FSR_prer مرة واحدة ، ثم يتم تعديله في المعالج) ، بعد ذلك فقط ، اسمح لمقاطعات تجاوز التدفق TMR0.

قبل تمكين المقاطعات ، من المستحسن مسح سجلات تخزين المعلومات ، ويتم تنفيذ هذه العملية باستخدام سجل tmp الإضافي (كعداد) والعنونة غير المباشرة ، المقاصة تعادل إيقاف تشغيل المصفوفة.

في روتين معالجة المقاطعة ، نقوم بتحميل محتويات سجل stolb في شريحة DD2 (في المرة الأولى التي تدخل فيها المعالج بعد تمكين المقاطعات ، يحتوي السجل على الرقم 10000000 ، كما هو مذكور أعلاه). يبدأ التحميل من الجزء المنخفض من سجل stolb ، والذي ينتقل في الاتجاه من Q0 إلى Q7 (داخل شريحة DD2) أثناء تحميله ، تمت مناقشة خوارزمية التحميل أعلاه ، لذلك أعتقد أنه لن يكون من الصعب فهم الكود . بعد ذلك ، نقوم بتحميل محتويات سجل INDF في DD2 ، وهذا أحد سجلات تخزين المعلومات ، وعنوانه موجود في FSR (في المرة الأولى التي تدخل فيها المعالج بعد تمكين المقاطعات ، يحتوي FSR على عنوان الأول سجل تخزين المعلومات يسمى data1). يبدأ التحميل من الجزء العالي من سجل INDF. بعد تحميل البايتين المعتبرين ، نقوم بتسجيل إخراج st_cp ، وبالتالي يتم نقل البيانات التي تم تنزيلها إلى خطوط الإخراج للدوائر الدقيقة DD2 و DD3. وهكذا ، عند الإدخال الأول للمعالج ، يتم تبديل العمود الأول من المصفوفة ، حيث تضيء مصابيح LED ، على الأنودات التي يوجد بها مستوى منطقي مرتفع ، وفقًا لمحتويات سجل البيانات 1 ( سجل تخزين المعلومات الأول).

بعد ذلك ، نقوم بتحويل سجل stolb إلى اليمين بمقدار بت واحد من أجل تحضير العمود الثاني من المصفوفة للتبديل عند الإدخال التالي إلى معالج المقاطعة. يجب مسح علم C الخاص بسجل STATUS قبل التحول ، نظرًا لأن التحول يحدث من خلال هذا العلم وحالته غير معروفة في وقت التحول. بعد التحول ، نقوم بزيادة سجل FSR ، وإعداد سجل التخزين التالي (بعد سجل البيانات 1) بمستويات الصف المنطقية للعمود الثاني. بعد ذلك ، نقوم بإنقاص سجل shet مع الشرط ، وإذا لم يكن مساويًا للصفر ، أعد تعيين علامة TMR0 الفائض ، واكتب الرقم إلى المؤقت ، ثم اخرج من معالج المقاطعة.

في المرة التالية التي تدخل فيها المعالج ، سيتم تمكين العمود الثاني من المصفوفة ، وهكذا. عند إعادة ضبط سجل shet (بعد تبديل العمود الثامن) ، تتم كتابة الرقم 8 عليه للدورة التالية من تبديل الأعمدة ، بالإضافة إلى ذلك ، يتم تصحيح قيمة سجل stolb ، وعنوان سجل تخزين المعلومات الأول ( data1) إلى سجل FSR.

دعونا نحسب التأخير الزمني لمؤقت TMR0 ، وتردد الساعة 4 ميجا هرتز ، ودورة الماكينة هي 1 ميكرو ثانية. لتجنب وميض مصابيح LED ، لنأخذ معدل التحديث لكل عمود على أنه 100 هرتز (الفترة T = 10 مللي ثانية) ، والتأخير الزمني هو 10/8 = 1.25 مللي ثانية. قمنا بضبط نسبة المقياس المسبق TMR0 على 1: 8 ، بينما أقصى تأخير ممكن هو 256 × 8 = 2048 ميكرو ثانية. للإيقاف المؤقت 1.25 مللي ثانية ، يجب أن يعد المؤقت (256 × 1.25) / 2.048 = 156.25 مرة ، بالتقريب إلى الأعلى نحصل على 156 عددًا. وفقًا لذلك ، من الضروري كتابة الرقم 256-156 = 100 في المؤقت. ولكن هذه ليست القيمة الصحيحة تمامًا ، حيث يستغرق تنفيذ روتين المقاطعة بعض الوقت ، وفي هذه الحالة يستغرق الأمر حوالي 190 ثانية ، معاد حسابها مع الأخذ في الاعتبار حساب معامل prescaler ، نحصل على 190/8 = 23.75 أو 24 التهم. القيمة الصحيحةللكتابة إلى TMR0 هو: 100 + 24 = 124.

في البرنامج الرئيسي ، نكتب 8 سجلات لتخزين المعلومات ، وفقًا لما نريد عرضه على المصفوفة. يوجد أدناه رسم تخطيطي يشرح إخراج المعلومات إلى المصفوفة للكود أعلاه.


بالإضافة إلى سجلات التحويل ، هناك برامج تشغيل متخصصة لعرض المعلومات على مؤشرات من سبعة مقاطع ومصفوفات LED ، وفي هذه الحالة يقوم السائق نفسه بتنفيذ مؤشر ديناميكي ، كل ما تبقى هو إرسال البيانات إليه لعرضها. لقد راجعت أحد هؤلاء السائقين المشهورين في مقال حول.

أسفل الرابط يمكنك تنزيل البرنامج الثابت وكود المصدر للميكروكونترولر PIC16F628A ، مع تنفيذ مؤشر ديناميكي على مصفوفة 8x8 باستخدام اثنين من مسجلات التحول 74HC595 ، تمت مناقشة مخطط الاتصال أعلاه. يتم عرض الأحرف R و L والرقم 46 وابتسامة على شكل تقاطع بالتناوب على المصفوفة ، وتظهر هذه الرسوم المتحركة في الفيديو أدناه.

مع علامات ، . يقرأ .

يعد تجميع سرادق بناءً على مصفوفة LED و Arduino مهمة بسيطة يمكن القيام بها حتى في المنزل. لست بحاجة إلى أن تكون مبرمجًا ولديك معرفة عميقة بالإلكترونيات لجعل الحروف تتحرك على شاشة LED. في هذه المقالة ، سنحلل كيفية تجميع خط تشغيل من مصفوفات LED الجاهزة و Arduino Nano.

ما هو المطلوب؟

لتنفيذ الفكرة ، تحتاج إلى تفاصيل قليلة جدًا:

  • وحدتي LED ، تتكونان من أربع مصفوفات 8 × 8 بكسل ؛
  • حامل لبطارية من الحجم القياسي "كرونا" ؛
  • بطارية 9 فولت (CR-9V ، ER-9V أو ما يعادلها) ؛
  • مفتاح ثنائي دبوس
  • توصيل الأسلاك
  • لوحة اردوينو نانو
  • الغراء الساخن.

مخطط

على لوحة الدوائر المطبوعة لوحدة LED المستخدمة ، هناك 4 مصفوفات بحجم 8 × 8 بكسل. يتم التحكم في كل لوحة LED بواسطة دائرة متكاملة (IC) MAX7219. هذا IC هو وحدة تحكم للتحكم في شاشات LED ومصفوفات الكاثود الشائعة ومصابيح LED المنفصلة بكمية تصل إلى 64 قطعة.

للحصول على تصور أكثر راحة للمعلومات المعروضة على شاشة LED ، يوصى بتثبيت عدة وحدات. للقيام بذلك ، يتم دمجهم في مجموعات متصلة بالسلسلة ، أي أن إخراج الوحدة الأولى (خارج) متصل بإدخال الوحدة الثانية (في). يتكون هذا التجميع من وحدتين (16 مصفوفة) ، طولهما كافٍ تمامًا للقراءة المريحة للجمل بأكملها.

حَشد

يمكن أن تحتوي وحدة المصفوفة على وصلة دبوس أو جهات اتصال على اللوحة في شكل موصلات مطبوعة. يعتمد ذلك على كيفية اتصالهم. في الحالة الأولى ، يتم استخدام أداة ربط مع موصلات للحصول على اتصال كهربائي موثوق ، وفي الحالة الثانية ، يجب تثبيت وصلات العبور ولحامها.

لكن عليك أولاً دمج كلتا الوحدتين في وحدة واحدة باستخدام مادة لاصقة تذوب بالحرارة. اللاصق اللدائن الحرارية لا يوصل الكهرباء ، مما يعني أنه يمكن تطبيقه بأمان على لوحة الدوائر المطبوعة. يتم تطبيق الغراء من طرفي كل من اللوحتين ، ويتم الضغط عليه وتركه لعدة دقائق. بعد التصلب ، يتم توصيل جهات اتصال الإخراج الخاصة بالكتلة الأولى بجهات اتصال الإدخال الخاصة بالكتلة الثانية وفقًا للمخطط:

  • VCC - VCC
  • GND-GND
  • D IN - D OUT
  • CS – CS
  • CLK - CLK

مع الجانب المعاكسثنائي الفينيل متعدد الكلور مع الغراء الساخن المرفقة اردوينو نانو ، حجرة البطارية والمفتاح. يتم ترتيب التفاصيل بطريقة يمكن استخدامها بسهولة.
في المرحلة التالية ، يتم توصيل Arduino بوحدة LED عن طريق توصيل الأسلاك بمدخل المصفوفة الأولى. اعتمادًا على إصدار الوحدة النمطية ، يتم إجراء العملية من خلال اتصال قابل للفصل أو عن طريق اللحام وفقًا للرسم التخطيطي أدناه:

  • VCC-5V
  • GND-GND
  • D IN - PIN 11
  • CS-PIN 10
  • CLK - رقم التعريف الشخصي 13.

في المرحلة النهائية من التجميع ، من الضروري توصيل طاقة البطارية. للقيام بذلك ، يتم توصيل جهة الاتصال السالبة (السلك الأسود) من حجرة التاج بدبوس GND في Arduino. يتم توصيل جهة الاتصال الموجبة (السلك الأحمر) بالمفتاح ، ثم بدبوس Arduino رقم 30 ، المصمم لتزويد الجهد من مصدر غير منظم. في وضع الاختبار ، يمكن تشغيل مؤشر "افعل ذلك بنفسك" عبر micro USB من جهاز كمبيوتر.
بعد التأكد من موثوقية السحابات وجودة التوصيلات الكهربائية ، يبدأون في تجميع العلبة. يمكن أن تكون مصنوعة من الألومنيوم أو البلاستيك ، لأن عناصر الدائرة لا تسخن. يعتمد اللون والأبعاد ودرجة الحماية وتثبيت الهيكل على الاستخدام المستقبلي للجهاز. في أبسط الحالات ، تكون الشاشة الواقية المصنوعة من تشكيل جانبي بلاستيكي للبناء مع فتحة لمفتاح مناسبة.

برمجة الشريط

أصبح خط التشغيل من وحدات Arduino و LED تحت التحكم في MAX7219 جاهزًا تقريبًا. حان الوقت للانتقال إلى الجزء الأخير من البرنامج. يجب تثبيت البرنامج (البرنامج) الخاص بـ Arduino المستخدم وبرنامج التشغيل الخاص به على الكمبيوتر. بعد ذلك ، تحتاج إلى تنزيل مكتبتين ورسم تخطيطي (برنامج خاص سيتم تحميله وتنفيذه بواسطة معالج Arduino). يتم تثبيت المكتبات مع Arduino IDE مغلق في مجلد المستندات - Arduino - المكتبات. ثم يقومون بتنزيل المخطط وتشغيله والتحقق من وجود المكتبات وصحة البيانات الأخرى.

إعداد الرسم:

  • يشير "عدد العروض الأفقية" إلى عدد الخطوط ، في حالتنا 1 ؛
  • يشير "عدد العروض الرأسية" إلى عدد المصفوفات ، في حالتنا 8 ؛
  • "شريط سلسلة" يشير إلى النقش المعروض على الشاشة ؛
  • تحدد "int wait" سرعة الإخراج بالمللي ثانية.

بعد التحقق من البيانات المدخلة ، يبقى النقر فوق الزر "تنزيل". ثم افصل جهاز الكمبيوتر ، وأدخل البطارية وابدأ تشغيل الجهاز.

في الختام ، أود أن أضيف أن خط التشغيل افعل ذلك بنفسك يتم تجميعه بسرعة كبيرة حتى بدون مهارات العمل مع Arduino. لذلك ، لا يجب أن تخاف من هذه اللوحة المعقدة. تجدر الإشارة أيضًا إلى أنه يمكن زيادة طول خط التشغيل عن طريق زيادة عدد مصفوفات LED.

اقرأ أيضا

في السنوات الأخيرة ، أصبحت مصفوفات LED منتشرة في الإعلانات الخارجية ولوحات المعلومات المختلفة. مشرقة جدًا وديناميكية - فهي تجذب الانتباه تمامًا ولا تصاب بالعمى في يوم مشمس. كل واحد منكم يراهم في شوارع مدينتك كل يوم.
بالطبع ، تم تسهيل توزيعها من خلال السعر المنخفض (بسبب الشركات المصنعة الصينية) وسهولة تجميع الشاشة.

ولكن ماذا لو حاولت استخدام مثل هذه المصفوفات في أجهزتك على ميكروكنترولر؟ ما هي واجهة التبادل ومنطق الإخراج لهذه المصفوفات؟
دعنا نحاول معرفة كل شيء.

يقدم الصينيون كلاً من المصفوفات بأنفسهم بأحجام مختلفة وبدقة مختلفة ، بالإضافة إلى وحدات تحكم لعرض الصور عليها بتأثيرات بسيطة متنوعة ، فضلاً عن جميع الملحقات الضرورية وكابلات التوصيل والإطارات.
تم العثور على المصفوفات بلون واحد (أبيض ، أصفر ، أحمر ، أخضر ، أزرق) ، وثلاثة ألوان (RGB). عادةً ما يبدو تعيين نموذج المصفوفة مثل Pxx أو PHxx ، حيث xx هو رقم يشير إلى المسافة بين وحدات البكسل بالميليمترات. في حالتي هو P10. بالإضافة إلى ذلك ، فإن المصفوفات من بعض الأحجام القياسية ليست مستطيلة فحسب ، بل مربعة أيضًا.

الخيارات الممكنة لأحجام القوالب



لذلك ، لدينا مصفوفة بيضاء بحجم 32 × 16 بكسل بأبعاد 320 × 160 مم ، وبالتالي ، مسافة البينيكسل 10 مم. دعونا نلقي نظرة فاحصة عليها.
منظر أمامي:

يبدو لك أيضًا أن المصابيح هي نوع من البيضاوي؟ ألم تفكر ...


يتكون حاجب صغير فوق مصابيح LED ، مما يمنع ضوء الشمس من إضاءة مصابيح LED.

منظر أمامي مع إزالة قناع بلاستيكي



ندير المصفوفة ونرى اللوحة:


هناك مجموعة من الرقائق المنطقية على السبورة. دعونا نرى ما هي هذه الدوائر الدقيقة:
1. 1 × SM74HC245D - المخزن المؤقت غير العكسي
2. 1 × SM74HC04 - عاكس 6 قنوات
3. 1 × SM74HC138D - وحدة فك ترميز 8 بت
4. 4 × APM4953 - تجميع 2 MOSFETs P-channel
5. 16 × 74HC595D سجل التحول المغلق
يوجد موصلين من 16 سنًا هما واجهة ، أحدهما مدخل (وحدة تحكم الشاشة متصلة به) ، والثاني هو الإخراج (المصفوفة التالية في السلسلة متصلة بها). يتم توجيه السهم الموجود على اللوحة من موصل الإدخال إلى الإخراج.
يتم توفير الطاقة للأطراف في وسط اللوحة. جهد الإمداد - 5 فولت ، أقصى تيار (عند تشغيل جميع مصفوفات LED) - 2 أمبير (للمصفوفة البيضاء).

جميع المعلومات المذكورة أعلاه ، بالإضافة إلى عرض مصفوفة في الفيديو أدناه. في ذلك ، من 13:04 إلى 15:00 أتحدث عن اعتماد سطوع الشاشة على عدد المصفوفات. هذا بسبب خطأ في الخوارزمية. تم إصلاح الخلل والآن يتم تحميل البيانات قبل إيقاف تشغيل الشاشة.

سأكون سعيدا أيضا لرؤيتك قناة اليوتيوب الخاصة بي، حيث ما زلت أقوم بتوصيل الكثير من الأشياء بوحدات التحكم الدقيقة.

شكرا لكم جميعا على اهتمامكم!

يمر الوقت بشكل غير محسوس ويبدو أن المعدات التي تم شراؤها مؤخرًا معطلة بالفعل. لذلك ، بعد أن عملت 10000 ساعة ، أمرت مصابيح شاشتي (AOC 2216Sa) بالعيش لفترة طويلة. في البداية ، لم يتم تشغيل الإضاءة الخلفية في المرة الأولى (بعد تشغيل الشاشة ، تم إيقاف الإضاءة الخلفية بعد بضع ثوانٍ) ، والتي تم حلها عن طريق تشغيل / إيقاف تشغيل الشاشة مرة أخرى ، بمرور الوقت ، كان لابد من تشغيل الشاشة إيقاف / إيقاف بالفعل 3 مرات ، ثم 5 ، ثم 10 ، وفي وقت ما لا يمكن تشغيل الإضاءة الخلفية ، بغض النظر عن عدد المحاولات لتشغيله. اتضح أن المصابيح التي تم إخراجها إلى نور الله كانت ذات حواف سوداء وذهبت بشكل قانوني إلى الخردة. لم تنجح محاولة وضع مصابيح بديلة (تم شراء مصابيح جديدة بحجم مناسب) (كانت الشاشة قادرة على تشغيل الإضاءة الخلفية عدة مرات ، ولكنها سرعان ما عادت إلى وضع التشغيل والإيقاف) ومعرفة أسباب ما يمكن أن يكون قادتني المشكلة الموجودة بالفعل في إلكترونيات الشاشة إلى فكرة أنه سيكون من الأسهل تجميع الإضاءة الخلفية للشاشة الخاصة بك على مصابيح LED بدلاً من إصلاح دائرة العاكس الحالية لمصابيح CCFL ، خاصة وأن هناك مقالات بالفعل على الشبكة تعرض الاحتمال الأساسي لمثل هذا الاستبدال.

نقوم بتفكيك الشاشة

تم بالفعل كتابة الكثير من المقالات حول موضوع تفكيك الشاشة ، جميع الشاشات متشابهة جدًا مع بعضها البعض ، لذلك باختصار:
1. قمنا بفك مسامير تركيب وحدة تزويد الشاشة والمسمار الوحيد الموجود في الجزء السفلي الذي يحمل الجدار الخلفي للعلبة


2. يوجد في الجزء السفلي من العلبة فتحتان بين الجزء الأمامي والخلفي من العلبة ، نضع في أحدهما مفكًا مسطحًا ونبدأ في إزالة الغطاء من المزالج حول محيط الشاشة بالكامل (ببساطة برفق قلب مفك البراغي حول محوره ورفع غطاء العلبة). ليس من الضروري بذل جهود مفرطة ، ولكن من الصعب إزالة العلبة من المزالج فقط لأول مرة (أثناء الإصلاح فتحتها عدة مرات ، لذلك بدأت إزالة المزالج بشكل أسهل بمرور الوقت).
3. لدينا منظر لتركيب الإطار المعدني الداخلي أمام العلبة:


نخرج اللوح بالأزرار من المزالج ، ونخرج (في حالتي) موصل السماعة ، وبعد فك المزلاجين في الأسفل ، نخرج العلبة المعدنية الداخلية.
4. على اليسار يمكنك رؤية 4 أسلاك لتوصيل الإضاءة الخلفية. نخرجهم عن طريق الضغط قليلاً ، لأن. لمنع السقوط ، فإن الموصل مصنوع على شكل مشبك غسيل صغير. نخرج أيضًا كبلًا عريضًا ينتقل إلى المصفوفة (في الجزء العلوي من الشاشة) ، ونضغط على الموصل الخاص به على الجانبين (نظرًا لوجود مزاليج جانبية في الموصل ، على الرغم من أن هذا ليس واضحًا للوهلة الأولى على الموصل):


5. الآن أنت بحاجة إلى تفكيك "الشطيرة" التي تحتوي على المصفوفة نفسها والإضاءة الخلفية:


يوجد على طول المحيط مزلاج تفتح بحفر بسيط باستخدام نفس مفك البراغي المسطح. أولاً ، تتم إزالة الإطار المعدني الذي يحمل المصفوفة ، وبعد ذلك يمكنك فك ثلاثة مسامير صغيرة (لن يعمل مفك البراغي العادي بسبب حجمه الصغير ، ستحتاج إلى إطار صغير بشكل خاص) يحمل يمكن إزالة لوحة التحكم في المصفوفة والمصفوفة (من الأفضل وضع الشاشة على سطح صلب ، مثل طاولة مغطاة بمصفوفة من القماش لأسفل ، وفك لوحة التحكم ، ووضعها على الطاولة ، وفتحها من خلال نهاية راقب حالة الإضاءة الخلفية وارفعها عن طريق رفعها عموديًا ، وستظل المصفوفة ملقاة على الطاولة. بالترتيب - على سبيل المثال ، قم بتغطية المصفوفة الموجودة على المنضدة بعلبة الإضاءة الخلفية المجمعة ، ولف الكابل من خلال نهاية لوحة التحكم و شد لوحة التحكم برفق ارفع الوحدة المجمعة).
اتضح المصفوفة بشكل منفصل:


والكتلة الخلفية بشكل منفصل:


يتم تفكيك الكتلة ذات الإضاءة الخلفية بطريقة مماثلة ، فقط بدلاً من الإطار المعدني ، يتم تثبيت الإضاءة الخلفية بواسطة إطار بلاستيكي ، والذي يضع في نفس الوقت زجاج شبكي يستخدم لنشر ضوء الإضاءة الخلفية. توجد معظم المزالج على الجوانب وتشبه تلك التي تمسك الإطار المعدني للمصفوفة (يتم فتحها عن طريق التحديق بمفك براغي مسطح) ، ولكن يوجد على الجانبين العديد من المزالج التي تفتح "للداخل" (تحتاج إلى الضغط على باستخدام مفك البراغي بحيث تدخل المزالج داخل العلبة).
في البداية ، حفظت موضع جميع الأجزاء المراد إزالتها ، ولكن تبين بعد ذلك أنه لن يكون من الممكن تجميعها "بشكل غير صحيح" ، وحتى إذا بدت الأجزاء متماثلة تمامًا ، فإن المسافات بين المزالج على الجوانب المختلفة من الإطار المعدني والنتوءات المثبتة على جوانب الإطار البلاستيكي الذي يحمل الإضاءة الخلفية لن تسمح بتجميعها "بشكل غير صحيح".
هذا في الواقع كل شيء - قمنا بتفكيك الشاشة.

شريط إضاءة LED

في البداية ، تقرر إنشاء الإضاءة الخلفية لشريط LED بمصابيح بيضاء من 3528 إلى 120 مصباحًا لكل متر. أول ما تم التوصل إليه هو أن عرض الشريط كان 9 مم ، وكان عرض الإضاءة الخلفية (ومقعد الشريط) 7 مم (في الواقع ، هناك إضاءة خلفية بمعيارين - 9 مم و 7 مم ، لكن في حالتي كانت 7 مم). لذلك ، بعد فحص الشريط ، تقرر قطع 1 مم من كل حافة للشريط ، لأن. لم يلمس هذا المسارات الموصلة على الجزء الأمامي من الشريط (وفي الخلف ، على طول الشريط بأكمله ، يوجد سلكان عريضان للطاقة ، لن يفقدا خصائصهما بسبب انخفاض خصائصهما بمقدار 1 مم في الإضاءة الخلفية 475 مم لأن التيار سيكون صغيراً). لا قال في وقت أقرب مما فعله:


أنيق تمامًا ضوء بقيادة قطاعقص بطول كامل (تظهر الصورة مثالاً لما حدث من قبل وما حدث بعد التشذيب).
سنحتاج إلى شريطين من شريط 475 مم (19 مقطعًا من 3 مصابيح LED لكل شريط).
أردت أن تعمل الإضاءة الخلفية للشاشة بنفس الطريقة التي تعمل بها الإضاءة العادية (أي يتم تشغيلها وإيقاف تشغيلها بواسطة وحدة التحكم في الشاشة) ، لكنني أردت ضبط السطوع "يدويًا" ، كما هو الحال في شاشات CRT القديمة ، لأن هذه وظيفة مستخدمة بشكل متكرر وقد سئمت من تسلق القائمة التي تظهر على الشاشة في كل مرة ضغطت فيها على بعض المفاتيح (في شاشتي ، لا تضبط المفاتيح اليمنى واليسرى أوضاع الشاشة ، ولكن حجم مكبرات الصوت المدمجة ، لذلك كان لا بد من تغيير الأوضاع في كل مرة من خلال القائمة). لهذا ، تم العثور على دليل على الشبكة لشاشتي (لمن يكون مفيدًا - مرفق في نهاية المقالة) وتم العثور على + 12V و On و Dim و GND على الصفحة مع Power Board وفقًا للمخطط التي نحن مهتمون بها.


قيد التشغيل - إشارة من لوحة التحكم لتشغيل الإضاءة الخلفية (+ 5 فولت)
خافت - التحكم في سطوع الإضاءة الخلفية PWM
+ 12 فولت كان بعيدًا عن 12 ، ولكن في مكان ما حوالي 16 فولت بدون تحميل الإضاءة الخلفية وفي مكان ما حول 13.67 فولت مع تحميل
تقرر أيضًا عدم إجراء أي تعديلات PWM على سطوع الإضاءة الخلفية ، ولكن لتشغيل الإضاءة الخلفية بالتيار المباشر (في نفس الوقت ، يتم حل المشكلة مع حقيقة أنه بالنسبة لبعض الشاشات ، لا يعمل PWM في الإضاءة الخلفية بتردد عالٍ جدًا وبعض العيون تتعب أكثر من ذلك). في شاشتي ، كان تردد PWM "الأصلي" 240 هرتز.
علاوة على ذلك ، تم العثور على جهات الاتصال التي يتم تطبيق إشارة التشغيل عليها (مميزة باللون الأحمر) و + 12 فولت على وحدة العاكس (تم وضع علامة خضراء على وصلة العبور التي يجب فكها لإلغاء تنشيط وحدة العاكس). (يمكن تكبير الصورة لرؤية الملاحظات):


تم أخذ المنظم الخطي LM2941 كأساس لدائرة التحكم ، ويرجع ذلك أساسًا إلى أنه عند تيار يصل إلى 1 أمبير ، كان لديه دبوس تحكم منفصل في التشغيل / الإيقاف ، والذي كان من المفترض استخدامه للتحكم في تشغيل / إيقاف الإضاءة الخلفية باستخدام إشارة التشغيل من لوحة التحكم في الشاشة. صحيح ، في LM2941 ، تنعكس هذه الإشارة (أي ، يوجد جهد عند الخرج عندما يكون دخل التشغيل / الإيقاف صفرًا) ، لذلك اضطررت إلى تجميع عاكس على ترانزستور واحد لمطابقة إشارة التشغيل المباشرة من لوحة التحكم ومدخلات LM2941 المقلوبة. لا يحتوي المخطط على أي تجاوزات أخرى:


يتم حساب جهد الخرج لـ LM2941 بالصيغة:

صوت = Vref * (R1 + R2) / R1

حيث Vref = 1.275V ، R1 في الصيغة يتوافق مع R1 في الدائرة ، و R2 في الصيغة يتوافق مع زوج من المقاومات RV1 + RV2 في الدائرة (يتم إدخال مقاومين للتحكم في السطوع بشكل أكثر سلاسة وتقليل نطاق الفولتية المنظمة بواسطة المقاوم المتغير RV1).
بصفتي R1 ، أخذت 1 kOhm ، ويتم اختيار R2 وفقًا للصيغة:

R2 = R1 * (Vout / Vref-1)

الحد الأقصى للجهد الذي نحتاجه للشريط هو 13 فولت (أخذت زوجًا أكثر من الجهد الاسمي 12 فولت حتى لا أفقد السطوع ، وسيتحمل الشريط مثل هذا الجهد الزائد الطفيف). أولئك. أقصى قيمة R2 = 1000 * (13 / 1.275-1) = 9.91kΩ. يبلغ الحد الأدنى للجهد الذي لا يزال يضيء عنده الشريط حوالي 7 فولت ، أي الحد الأدنى للقيمة R2 = 1000 * (7 / 1.275-1) = 4.49kΩ. يتكون R2 الخاص بنا من مقاوم متغير RV1 وأداة تشذيب متعددة الأدوار RV2. نحصل على المقاومة RV1 9.91kOhm - 4.49kOhm = 5.42kOhm (نختار أقرب قيمة RV1 - 5.1kOhm) ، ونضع RV2 عند حوالي 9.91-5.1 = 4.81kOhm (في الواقع ، من الأفضل أولاً تجميع الدائرة ، اضبط المقاومة القصوى لـ RV1 وقم بقياس الجهد عبر الخرج LM2941 واضبط المقاومة RV2 بحيث يكون للخرج الجهد الأقصى المطلوب (في حالتنا ، حوالي 13 فولت).

تركيب شريط LED

نظرًا لأنه بعد قطع الشريط بمقدار 1 مم ، تم الكشف عن أسلاك الطاقة في نهايات الشريط ، قمت بلصق شريط كهربائي على العلبة في المكان الذي سيتم فيه لصق الشريط (للأسف ليس أزرق ولكن أسود). يتم لصق شريط لاصق من الأعلى (من الجيد تدفئة السطح بمجفف شعر ، لأن الشريط اللاصق يلتصق بشكل أفضل على السطح الدافئ):


بعد ذلك ، يتم تثبيت الفيلم الخلفي والزجاج الشبكي ومرشحات الضوء التي توضع فوق زجاج شبكي. على طول الحواف ، قمت بدعم الشريط بقطع من الممحاة (حتى لا تنفجر الحواف الموجودة على الشريط):


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




تم بدء تشغيل إشارة الطاقة والتحكم من لوحة إمداد الطاقة:


يتم حساب القدرة المقدرة المخصصة لـ LM2941 بالصيغة:

Pd = (Vin-Vout) * Iout + Vin * Ignd

بالنسبة لحالتي ، فهي Pd = (13.6-13) * 0.7 + 13.6 * 0.006 = 0.5 واط ، لذلك تقرر الحصول على أصغر مبرد لـ LM2941 (مزروعة من خلال حشية عازلة للكهرباء لأنها ليست معزولة عن الأرض في LM2941).
أظهر التجميع النهائي أداءً جيدًا للتصميم:


من المزايا:

  • يستخدم شريط LED قياسي
  • لوحة تحكم بسيطة
من النواقص:
  • سطوع الإضاءة الخلفية غير كاف في ضوء النهار الساطع (الشاشة أمام النافذة)
  • لا تكون مصابيح LED الموجودة في الشريط متباعدة بشكل كافٍ لإظهار أقماع صغيرة من الضوء من كل مصباح LED فردي بالقرب من الحواف العلوية والسفلية للشاشة
  • توازن اللون الأبيض متوقف قليلاً ويتحول إلى اللون الأخضر قليلاً (على الأرجح يتم حله عن طريق ضبط توازن اللون الأبيض للشاشة نفسها أو لبطاقة الفيديو)
جيد جدا وبسيط و خيار الميزانيةإصلاح الإضاءة الخلفية. من المريح جدًا مشاهدة الأفلام أو استخدام الشاشة كتلفزيون مطبخ ، ولكن ربما لا تكون مناسبة للعمل اليومي.

التحكم في السطوع باستخدام PWM

بالنسبة لهؤلاء المخترقين الذين ، بخلافي ، لا يتذكرون مع الحنين إلى الماضي السطوع التناظري وضوابط التباين على القديم شاشات CRTيمكنك التحكم من PWM القياسي الذي تم إنشاؤه بواسطة لوحة التحكم الخاصة بالشاشة دون إزالة أي عناصر تحكم إضافية إلى الخارج (بدون حفر علبة الشاشة). للقيام بذلك ، يكفي تجميع دائرة AND-NOT على اثنين من الترانزستورات عند إدخال وحدة التحكم في التشغيل / الإيقاف وإزالة التحكم في السطوع عند الإخراج (ضبط انتاج التيار الكهربائيثابت عند 12-13 فولت). مخطط معدل:


يجب أن تكون مقاومة مقاوم التشذيب RV2 لجهد 13 فولت حوالي 9.9 كيلو أوم (ولكن من الأفضل ضبطه بالضبط عند تشغيل المنظم)

إضاءة خلفية LED أكثر كثافة

لحل مشكلة السطوع غير الكافي (وفي نفس الوقت التوحيد) للإضاءة الخلفية ، تقرر تثبيت المزيد من مصابيح LED وفي كثير من الأحيان. منذ أن اتضح أن شراء مصابيح LED بشكل فردي أغلى من شراء 1.5 متر من الشريط ولحامها من هناك ، تم اختيار خيار أكثر اقتصادا (لحام مصابيح LED من شريط).
تم وضع 3528 LEDs نفسها على 4 شرائط بعرض 6 مم وطول 238 مم ، و 3 مصابيح LED متسلسلة في 15 مجموعة متوازية على كل من الشرائط الأربعة (تم توصيل الأسلاك الخاصة بمصابيح LED). بعد لحام المصابيح والأسلاك ، يتم الحصول على ما يلي:




يتم وضع الشرائط في الجزء العلوي والسفلي مع وجود أسلاك على حافة الشاشة في مفصل في المنتصف:




يبلغ الجهد الاسمي عبر مصابيح LED 3.5 فولت (النطاق من 3.2 إلى 3.8 فولت) ، لذلك يجب أن يتم تشغيل مجموعة من 3 مصابيح LED في السلسلة بحوالي 10.5 فولت. لذلك يجب إعادة حساب معلمات وحدة التحكم:


الحد الأقصى للجهد الذي نحتاجه للشريط هو 10.5 فولت. أولئك. أقصى قيمة R2 = 1000 * (10.5 / 1.275-1) = 7.23kΩ. يبلغ الحد الأدنى للجهد الذي لا يزال يتوهج عنده تجميع المصابيح بطريقة ما حوالي 4.5 فولت ، أي أدنى قيمة R2 = 1000 * (4.5 / 1.275-1) = 2.53kΩ. يتكون R2 الخاص بنا من مقاوم متغير RV1 وأداة تشذيب متعددة الأدوار RV2. نحصل على المقاومة RV1 7.23kOhm - 2.53kOhm = 4.7kOhm ، وقمنا بتعيين RV2 عند حوالي 7.23-4.7 = 2.53kOhm وضبطها في الدائرة المجمعة للحصول على 10.5 فولت عند خرج LM2941 بأقصى مقاومة RV1.
تستهلك مصابيح LED مرة ونصف أكثر من 1.2A من التيار (اسميًا) ، وبالتالي فإن تبديد الطاقة على LM2941 سيكون مساويًا لـ Pd = (13.6-10.5) * 1.2 + 13.6 * 0.006 = 3.8 واط ، الأمر الذي يتطلب بالفعل أكثر صلابة المبرد لإزالة الحرارة:


نحن نجمع ، نتواصل ، نحصل على أفضل بكثير:


مزايا:
  • سطوع عالٍ بدرجة كافية (يمكن مقارنته ، وربما تفوق سطوع الإضاءة الخلفية CCTL القديمة)
  • عدم وجود مخاريط الضوء على حواف الشاشة من مصابيح LED الفردية (توجد مصابيح LED في كثير من الأحيان والإضاءة الخلفية موحدة)
  • لا تزال لوحة تحكم بسيطة ورخيصة
عيوب:
  • لم يتم حل مشكلة توازن اللون الأبيض ، مع ترك درجات اللون الأخضر ، بأي شكل من الأشكال
  • LM2941 ، على الرغم من وجود غرفة تبريد كبيرة ، يتم تسخينها وتسخين كل شيء داخل العلبة

لوحة تحكم تعتمد على منظم التنحي

للتخلص من مشكلة التسخين ، تقرر تجميع باهتة بناءً على منظم جهد متدرج (في حالتي ، تم اختيار LM2576 بتيار يصل إلى 3 أمبير). يحتوي أيضًا على مدخل تحكم تشغيل / إيقاف مقلوب ، لذلك يوجد نفس العاكس الموجود على ترانزستور واحد للمطابقة:


يؤثر الملف L1 على كفاءة المحول ويجب أن يكون 100-220 μH لتيار حمل يبلغ حوالي 1.2-3A. يتم حساب جهد الخرج بالصيغة:

صوت = Vref * (1 + R2 / R1)

حيث Vref = 1.23V. بالنظر إلى R1 ، يمكنك الحصول على R2 باستخدام الصيغة:

R2 = R1 * (Vout / Vref-1)

في الحسابات ، R1 تعادل R4 في الدائرة ، و R2 تعادل RV1 + RV2 في الدائرة. في حالتنا ، لضبط الجهد في النطاق من 7.25 فولت إلى 10.5 فولت ، نأخذ R4 = 1.8 كيلو أوم ، المقاوم المتغير RV1 = 4.7 كيلو أوم ومقاوم التشذيب 10 كيلو أوم RV2 بتقريب أولي يبلغ 8.8 كيلو أوم (بعد تجميع الدائرة ، من الأفضل تحديد قيمته الدقيقة عن طريق قياس الجهد عند خرج LM2576 بأقصى مقاومة RV1).
بالنسبة لوحدة التحكم هذه ، قررت إنشاء لوحة (لم تكن الأبعاد مهمة ، لأن هناك مساحة كافية في الشاشة لتركيب حتى لوحة كبيرة):


تجميع لوحة التحكم:


بعد التركيب في الشاشة:


الجميع هنا:


بعد التجميع ، يبدو أن كل شيء يعمل:


البديل النهائي:


مزايا:

  • سطوع كافٍ
  • لا تسخن وحدة التحكم في التدرج ولا تسخن الشاشة
  • لا يوجد PWM ، مما يعني أنه لا يوجد شيء يومض بأي تردد
  • التحكم في السطوع التناظري (اليدوي)
  • لا يوجد حد أدنى للسطوع (لمن يحبون العمل ليلا)
عيوب:
  • تحول توازن اللون الأبيض قليلاً نحو درجات اللون الأخضر (ولكن ليس كثيرًا)
  • عند السطوع المنخفض (منخفض جدًا) ، يكون التباين في توهج مصابيح LED للتجمعات المختلفة مرئيًا بسبب انتشار المعلمات

خيارات الترقية:

  • يمكن ضبط توازن اللون الأبيض في كل من إعدادات الشاشة وإعدادات أي بطاقة فيديو تقريبًا
  • يمكنك محاولة وضع مصابيح LED أخرى لا تؤدي إلى إضعاف توازن اللون الأبيض بشكل ملحوظ
  • لتجنب الإضاءة غير المتساوية لمصابيح LED ذات السطوع المنخفض ، يمكنك استخدام: أ) PWM (اضبط السطوع باستخدام PWM الذي يوفر دائمًا الجهد المقنن) أو ب) قم بتوصيل جميع مصابيح LED في السلسلة وتزويدها بمصدر تيار قابل للتعديل (إذا كنت قم بتوصيل جميع 180 LEDs في السلسلة ، ستحتاج إلى 630V و 20mA) ، ثم يجب أن يمر نفس التيار عبر جميع مصابيح LED ، وسيكون لكل منها انخفاض في الجهد الخاص به ، ويتم تنظيم السطوع عن طريق تغيير التيار وليس الجهد.
  • إذا كنت ترغب في إنشاء دائرة قائمة على PWM لـ LM2576 ، فيمكنك استخدام دائرة NAND عند إدخال التشغيل / الإيقاف لمنظم التدرج لأسفل (على غرار الدائرة أعلاه لـ LM2941) ، ولكن من الأفضل وضع باهتة في فجوة السلك السلبي لمصابيح LED من خلال mosfet على مستوى المنطق

يمكنك التحميل من الرابط:

  • دليل خدمة AOC2216Sa
  • أوراق بيانات LM2941 و LM2576
  • مخططات منظم LM2941 في Proteus 7 وتنسيق PDF
  • تخطيط اللوحة لمصابيح LED بتنسيق Sprint Layout 5.0
  • رسم تخطيطي وأسلاك للوحة المنظم على LM2576 بتنسيق Proteus 7 و PDF

تأخذ مصابيح LED مكانها بشكل متزايد بين مصادر الإضاءة.
انخفاض استهلاك الطاقة ، سمح السطوع لمصابيح LED باستبدال المصابيح المتوهجة التقليدية والتنافس بثقة تامة مع المصابيح الموفرة للطاقة.
انطلاقًا من الاتجاه العام ، قررت أن أشعر بيدي وأنظر إلى مصفوفة LED بأم عيني ، والتي لا تتطلب أي برامج تشغيل منفصلة ، ولكنها تتصل مباشرة بشبكة 220 فولت. لمن يهتم بهذا الموضوع من فضلك تحت القط.
نتيجة لذلك ، اخترت المثال التالي:

ويترتب على الوصف الموجود بالصفحة أن مصدر الضوء هذا:
- تم إنتاجه باستخدام تقنية LED COB ؛
- جهد التغذية 220 فولت ؛
- استهلاك الطاقة 30 واط ؛
- درجة حرارة اللون 2500-3200 كلفن ؛
- مادة الركيزة (القاعدة) الألومنيوم ؛
- الأبعاد الكلية 40 * 60 مم ؛

أثناء سفر الحزمة ، درست النظرية.
ما هي تقنية LED COB؟

حتى حوالي عام 2009 ، كان لمنتجات LED اتجاه واحد فقط للتطوير - زيادة قوة LED أو Power LED. أتاح تحسين هذه التقنية إمكانية تحقيق طاقة LED واحدة بمستوى 10 واط.
كما اتضح فيما بعد ، فإن الزيادة الإضافية في الطاقة لا معنى لها بسبب التكلفة العالية لإنتاج مصباح LED منفصل عالي الطاقة. لعبت أيضًا دورًا مهمًا في البحث عن طريقة مختلفة للتطوير من خلال حقيقة أن LED هو مصدر نقطة للضوء ، واتضح أنه ليس من السهل وليس رخيصًا جدًا إضاءة مساحة سطح كبيرة باستخدام طاقة عالية المصابيح. للحصول على نتائج مقبولة أكثر أو أقل ، كان استخدام الأنظمة البصرية مطلوبًا لجعل الضوء منتشرًا.
كانت الخطوة التالية هي استخدام SMD LEDs لإنشاء مصادر ضوء منتشرة مقبولة - تم لحام عدد كبير من مصابيح LED على لوحة واحدة. تتمثل العيوب في كثافة اليد العاملة الإجمالية للعملية - إنتاج مصابيح LED فردية (كل منها على ركيزة خزفية خاصة به + طبقة فوسفور شخصية ، إلخ). بالإضافة إلى ذلك ، كانت عيوب الطريقة هي انخفاض موثوقية مصابيح LED الفردية والحاجة إلى الإصلاح في حالة فشل أحدها على الأقل.
نتيجة لذلك ، توصل المهندسون إلى فكرة الحاجة إلى إنتاج مصابيح LED بدون سمات شخصية ووضعها على نفس اللوحة على مسافة قصيرةمن بعضها البعض تحت طبقة الفوسفور الشائعة ، أي تقنية LED COB. في النهاية ، جعل هذا من الممكن تقليل تكلفة مصدر الضوء ككل ، وفي حالة فشل مصابيح LED الفردية ، يمكنك تغيير الوحدة بأكملها (المصفوفة).

وصلت الحزمة في مظروف أصفر مع غلاف فقاعي بالداخل. المصفوفة نفسها محاطة بكيس بلاستيكي مناسب.





كما ترون ، توجد بالفعل مصابيح LED بالقرب من بعضها البعض ، مغطاة بطبقة شائعة من الفوسفور ومحمية بكتلة تشبه الغراء البلاستيكي.
تبدو المادة البيضاء حول محيط المصفوفة والدائرة الوقائية للسائق مثل المطاط أو الغراء الساخن - وليست كتلة مرنة صلبة. جعل ذلك من الممكن إزالته من أبرز الحالات وتحديد أن أحدها عبارة عن جسر ثنائي MB10S بجهد عكسي ثابت أقصى يبلغ 1000 فولت ويبلغ أقصى تيار أمامي 0.5 أمبير.
ورقة البيانات:

الأبعاد تتوافق مع تلك المشار إليها في الوصف.



سمك الركيزة 1 مم ووزن المصفوفة بقدر 8 جرام.

وغني عن القول أنه ، كما هو الحال بالنسبة لمصابيح LED عالية الطاقة ، تحتاج المصفوفات أيضًا إلى غرفة تبريد. على هذا النحو ، تم اختيار غرفة التبريد من المعالج.


باستخدام مسامير التنصت الذاتية ، من خلال المعجون الحراري KPT-8 ، تم تثبيت المصفوفة في المبرد.
تم ارتكاب خطأ في تسلسل الإجراءات هذا - كان من المفترض أن يكون السلك ملحومًا قبل توصيل المصفوفة بالرادياتير - انتقلت الحرارة من مكواة اللحام إلى المشتت الحراري. نتيجة اللحام مرئية في الصورة. ومع ذلك ، تم تثبيت الأسلاك بشكل آمن ، ولم أبدأ في إزالة المصفوفة.


التضمين الأول ترك انطباعًا لا يمحى - لقول "براق" ، كي لا نقول شيئًا. حتى إذا تم عرضها من مسافة بزاوية طفيفة على مستوى المصفوفة ، يتم توفير "الأرانب البرية". مقارنة بما هو متاح مصابيح موفرة للطاقةعند درجة حرارة 2800 كلفن ، يكون الضوء أبيض ويوجد الكثير منه.

غرفة 14 مترا مربعا. أمتار مضاءة بشكل جيد.







بعد 20 دقيقة ارتفعت درجة الحرارة إلى 85 درجة. علاوة على ذلك ، لم أختبر المصفوفة من أجل القوة ، على الرغم من أن رقائق التحكم يمكنها التحكم في التيار من خلال مصابيح LED مع تسخين قوي.

تم إجراء المزيد من الاختبارات باستخدام التبريد القسري باستخدام مبرد قياسي من هذا المبرد ولوحة التحكم في سرعة المروحة. لقد أزلت آخر جهاز من مصدر طاقة الكمبيوتر القديم.





لم ترتفع درجة الحرارة عن 31.5 درجة لمدة ساعة ونصف ، وعملت المروحة بسرعات منخفضة دون تسارع.



بعد ذلك ، تم استبعاد لوحة التحكم في سرعة المروحة من التصميم واستبدال مصدر الطاقة بواحد 9 فولت.

جعلت الزيادة في الجهد في الشبكة من الممكن التأكد من صحة استهلاك الطاقة المعلن.



كما هو متوقع ، تفاعلت الكاميرا مع وميض المصفوفة بتردد 100 هرتز. لم ألتقط مقطع فيديو ، لكنني تمكنت من التقاط ما يلي

سيكون من الممكن التغلب على التموجات عن طريق لحام مكثف بجسر الصمام الثنائي. سيؤدي ذلك إلى زيادة الجهد إلى 220 * 1.41 = 310.2 فولت وسيكون من الضروري اللعب بمقاومات محدودة BP5132H ، لكن بما أنني كنت أدرك في البداية أن مصدر الضوء هذا لم يكن مخصصًا لأماكن المعيشة ، لم أبدأ هذه المعركة.
نطاق المصفوفة هو الإضاءة العامة للشوارع وغرف المرافق وما إلى ذلك ، وبالتالي يمكن إهمال النبضات.
بمساعدة LATR ، كان من الممكن إنشاء (تم إجراء التجربة في العمل ولم تلتقط صورة ، حتى لا تجيب على الأسئلة: "لماذا؟") ، أن الحد الأدنى الذي لا تزال المصفوفة تنبعث منه الضوء 130 فولت. لم أقم بتزويد أكثر من 250 فولت ، ولكن في هذه الحالة لن يتدخل قناع اللحام).
نظرًا لحقيقة أن مصدر الضوء هذا يتمتع بقوة عالية ، وإذا جاز التعبير ، زيادة كثافة الضوء ، فلن تكون الشاشة المنتشرة أمام المصفوفة غير ضرورية على الإطلاق.

نتيجة لذلك ، تشمل العيوب ما يلي:
- زيادة تبديد الحرارة (تكاليف التكنولوجيا وليس التصميم) والحاجة إلى استخدام المشتت الحراري (يفضل التبريد النشط) ؛
- تكلفة عالية نوعا ما.

ومع ذلك ، فإن هذه العيوب يقابلها سطوع هذه المصفوفة ، والقدرة على إضاءة مساحة كبيرة ، والامتثال للخصائص المعلنة.
لا يمكن أن يُعزى الخفقان إلى ميزات سلبية ، لأن منطقة تطبيق المصفوفة ليست مباني سكنية.
بشكل منفصل ، أود أن أنتقل إلى أتباع نظام "كارهي النقطة 18"). أصدقائي ، أطلب منكم أن تكون موضوعيًا في تقييم المعلومات المقدمة في المراجعة ، خاصة وأن الأمر استغرق الكثير من الجهد والوقت لجمعها وتنظيمها وتقديمها.

تم توفير المنتج لكتابة مراجعة من قبل المتجر. يتم نشر المراجعة وفقًا للمادة 18 من قواعد الموقع.

أخطط لشراء +44 اضافة الى المفضلة أحب الاستعراض +60 +111

تحميل...
قمة