أحب الساعة المضيئة ، وعندما احتجت إلى ساعة أخرى ، قمت بتجميعها بسرعة على لوح من ATtiny85 ، والمؤشر المكون من سبعة أجزاء TM1637 وعلى مدار الساعة في الوقت الحقيقي DS1307. ومع ذلك ، أثناء التجميع ، لم يتركني الشعور بأن وحدة تحكم أبسط يمكن الاستغناء عنها. واتضح أن هذا صحيح.
تنصل
ليس لدى المؤلف خلفية هندسية ولا يرتبط العمل بالميكروكونترولر ، لأنه بالتأكيد كل شيء على ما يرام. بالإضافة إلى ذلك ، لا يوجد أي الأمثل لاستهلاك الطاقة - نحن ، اردوينو ، لم نقبل ذلك!
الجزء الأجهزة
بادئ ذي بدء ، لقد درست الحلول المتاحة ، ولم أجد أي أمثلة جاهزة لتوصيل DS1307 ثنائي الأسلاك بـ ATtiny13. لأنه تم استبدال
RTC بـ DS1302 ثلاثي الأسلاك. استغرق اثنين من الساقين اتصال العرض. في النصف المتبقي من إعادة الضبط ، كان هناك زر
لضبط الوقت باستخدام
StackOverflow وزوج من المقاومات.
الاتصال النهائي للعناصر
مخطط اتصال (من staticmain )للأفضل ، لا تزال بحاجة إلى مقاومات تتراوح بين 4.7 و 10 آلاف من أرجل متحكم PB1 و PB2 (الوسط العلوي) لزيادة الطاقة ومكثف بمقدار 0.1 درجة فهرنهايت بين زائد وناقص ، لكنه يعمل بدونها.
جزء البرمجيات
عدد الأرجل على ATtiny13 ليست هي المشكلة الوحيدة. الذاكرة المتوفرة صغيرة أيضًا - 1 كيلوبايت فقط ، مما يجعل المكتبات الجاهزة غير مناسبة. الحل هو استخدام حزمة
MicroCore والمكتبة المدمجة
TM1637 . لم يتم العثور على شيء في DS1302 ، لذلك اضطررت إلى إنشائه بنفسي على أساس
هذا المستودع. رمز المراقبة الناتج متاح على
جيثب .
إرشادات خطوة بخطوة لأولئك الذين يرغبون في التكرار
قائمة الأجزاء- متحكم ATtiny13
- العرض على TM1637
- الوقت الحقيقي ساعة DS1302
- الكوارتز في 32768Hz
- زر
- زوج من المقاومات على 1K و 10 K
- حامل بطارية 3 فولت
- اللوح والصداري أو لوحة الدوائر
إذا واجهت Ali-Express ، فسيأخذ كل شيء حوالي 100 روبل.- كمبرمج - اردوينو مع رسم ArduinoISP ، المقدمة في الأمثلة ، تم الرفع إليه. إذا كنت مثلي ، استخدم Arduino Nano و 10-13 دبابيس للاتصال ، فأنت بحاجة إلى فك الارتباط 81
#define USE_OLD_STYLE_WIRING
بعد تحميل المخطط بين أرجل الأرض وإلقاء Arduino ، تحتاج إلى وضع مكثف عند 10mF ، على الرغم من أن البعض مخيط بدونه.

عملية البرامج الثابتة ATtiny13 من خلال اردوينو المتربة قليلا
- بحيث يمكن ل Arduino IDE العمل مع ATtiny13 ، تتم إضافة محتويات MicroCore إلى المجلد٪ Program Files (x86)٪ / Arduino / hardware. بعد ذلك ، في IDE ، في قسم الأدوات ، يتم تحديد لوحة ATtiny13 بالإعدادات: تعطيل BOD ، تمكين LBO ، نظام تشغيل داخلي على مدار الساعة 9.6.


- تحتوي مصادر Git بالفعل على المكتبات اللازمة للعمل مع ds1302 و TM1637 ، والتي تم تكوينها للعمل على المسامير (انظر ملفات رأس المكتبة) ، على التوالي صورة الاتصال ، لذلك فقط قم بتنزيل المستودع وتحميل clock.ino إلى ATtiny13. ستشغل البرامج الثابتة المساحة المتوفرة تقريبًا.

تجميعها الجهاز على اللوح. تشير النقاط الخضراء إلى موقع تثبيت ATtiny للبرامج الثابتة (كابل الطاقة البرتقالي الزائد ضعيف للغاية).
- نظرًا لخصوصية توصيل الزر ، ودرجات المقاوم غير دقيقة والجهد الكهربائي ، فقد يكون من الضروري تغيير حد استجابة analogRead في clock.ino (الخط 26).
- كانت الخطط لتصنيع اللوحة باستخدام طريقة LUT ، لكن الطابعة تعطلت في العملية ، لذلك تم تأجيل التحقق من اللوحة الناتجة إلى أجل غير مسمى حتى تم إصلاحها.
بدلا من الاستنتاج
تحتوي الدائرة المصغرة TM1637 ، التي تتحكم في مؤشر من سبعة أجزاء ، على مخارج ثنائية ، يمكن إرسال حالتها عبر الواجهة. ومع ذلك ، لا يتم فصلها على وحدة العرض ، ولا تدعمها المكتبة المستخدمة.
قد يكون من الممكن إنشاء لوحة لمؤشر أكبر عن طريق وضع دوائر كهربائية دقيقة وجهاز تحكم متحكم على لوحة دائرة مطبوعة ، لكن يبدو لي أنه في هذه الحالة ، أصبح من السهل شراء لوحات جاهزة. على الرغم من ذلك ، بالنسبة لي ، هذا يمكن أن يجعل مصمم راديو جيد.