جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
سواء كنت تتجول في العالم أو كنت مهتمًا فقط بمعرفة الوقت قبل إجراء تلك المكالمة في وقت متأخر من الليل ، فإن الساعة العالمية ذات 5 مناطق تناسب الفاتورة. منذ أن حصلت على بعض شاشات TM1637 الإضافية المكونة من 7 أرقام في آخر شحنة لي ، قررت تجميع ساعة لجميع المناسبات. قررت استخدام Arduino Uno للمشروع ، والذي قدم عددًا كافيًا من GPIO لـ 5 ساعات و 5 مؤشرات AM (LEDs) وضوء علوي تم تنشيطه باستخدام مستشعر اللمس. الدبوس الوحيد الذي لم أستخدمه هو D1 ، وهو من أجل المسلسل Tx ، والذي قد يؤدي فقط إلى مشكلة. لذلك إذا كنت مهتمًا ، فاقرأ!
الخطوة 1: الأجزاء
لصنع الساعة التي استخدمتها: - Arduino Uno (لكن يعمل Nano أو Mega أيضًا)
- (5) شاشات TM1637
- (5) مصابيح LED (لاستخدامها كمؤشرات AM / PM)
- (5) 220 أوم مقاومات
- ساعة RTC3231
- عصا AdaFruit NeoPixel أو إضاءة أخرى
- مستشعر اللمس لتنشيط الضوء
- محول باك لاستيعاب سحب القوة
- إطار أو جراب (قمت بطباعة علبة ثلاثية الأبعاد ، لكن كن مبدعًا)
- طاقة 12 فولت مع وعاء برميل (للسماح بتقسيم الرضعات)
- اختياري - درع Arduino Uno (فقط لجعله أبسط قليلاً)
الخطوة الثانية: البدء
ما زلت جديدًا على TM1637 ، لذلك قمت ببرمجة واحدة أولاً لمعرفة ما يمكنني فعله. في البداية لم تفعل شيئًا ، لكن مجتمع Arduino مذهل وسرعان ما جعلني أعمل. في جهاز TM1637 الخاص بي ، اضطررت إلى قطع الغطاءين على الظهر لتشغيله ومن هناك فقط بعض التجارب والخطأ. في النهاية ، ما زلت لا أستطيع الحصول على علامة النقطتين للساعة - إنها "تحل محل" رقم الساعة في الموضع 1 ، لكنني لا أوافقها في الوقت الحالي.
بعد ذلك ، قم بتوصيل لوحة توصيل مع كل شيء أولاً للتأكد من تطابق جميع اتصالاتك وبرمجتك - نعم ، ما زلت رجلًا خطوة بخطوة. ثم حدد المواقع المرغوبة وقم بإعداد المواقع المستهدفة من خلال إيجاد الفروق الزمنية من GMT. الآن إلى اللحام وتحديد المواقع.
الخطوة 3: الأسلاك
باستخدام موصل طاقة برميل لإدخال 12 فولت ، قم بتقسيم الطاقة والأرض إلى 1) محول باك و 2) فين على Arduino.
استخدم محول باك لإنشاء صفوف طاقة وأرضية بجهد 5 فولت على الدرع لتشغيل التوصيلات ، مما يؤدي إلى استقرار أي مشكلات في الطاقة.
يحتوي كل TM1637 على 4 اتصالات (5 فولت ، Grd ، بيانات وساعة) ، مع انتقال DIO و CLK إلى دبابيس GPIO الفردية (استخدمت 2-11) والقدرة على الصفوف الخاصة بي.
بالنسبة لمؤشرات Meridian (5 LEDs) ، لحام (5) 220 أوم res على الأرض وتوصيلات الأنود إلى A0-A3 و D12.
يحتاج RTC إلى 5v و Grd جنبًا إلى جنب مع SDA و SCL (A4 و A5).
يجب تثبيت عصا الضوء مرتين ، مرة على الصف ومرة إلى Uno. قم بتشغيل 5v إلى الصف والبيانات إلى GPIO (D13). يعمل مستشعر اللمس على 5 فولت و Grd و GPIO D0.
الخطوة 4: البرمجة
البرمجة إلى حد ما مباشرة إلى الأمام. لقد استخدمت مكتبة TM1637display.h لشاشات العرض ، مع تخصيص اسم فريد لكل عرض - كما هو متوقع ، مع اسم المدينة. ما عليك سوى تغيير دبابيس DIO و CLK لكل منهما.
قم بتشفير موقعك الأول مع فارق التوقيت وقم بتعيين محيط AM / PM لمصباح LED ليتم تشغيله / إيقاف تشغيله بناءً على الساعة. استخدمه لتكرار كل موقع.
لقد قمت بتعيين الساعة للموضع 0 ، 2 رقم ، بدون صفر بادئ. بالنسبة للدقائق التي استخدمت فيها "دقيقة" ومقسومة على 10 للرقم 1 (الموضع 2 ، رقم واحد) والوصف (٪) للرقم 2 (نقاط البيع 3 ، رقم واحد).
كانت إضاءة NeoPixel بالمستشعر مثل أي زر / مجموعة LED أخرى باستخدام مكتبة Adafruit_NeoPixel.
سهل.
الخطوة 5: التجميع
اصنع صندوقًا مناسبًا يناسب شاشات العرض وبعض المساحة الخلفية للوحة ومدخلات الطاقة ومحول باك. قم بإدخال الأسلاك وتوصيلها وتشغيلها وهي جاهزة. حسنًا ، قد يكون هناك ما هو أكثر من ذلك ، لكن هذه هي الأساسيات بغض النظر عن التصميم.
استمتع وسعادة ترقيع!