فهرست مطالب:

ساعت بازنشستگی / شمارش بالا / ساعت Dn: 4 مرحله (همراه با تصاویر)
ساعت بازنشستگی / شمارش بالا / ساعت Dn: 4 مرحله (همراه با تصاویر)

تصویری: ساعت بازنشستگی / شمارش بالا / ساعت Dn: 4 مرحله (همراه با تصاویر)

تصویری: ساعت بازنشستگی / شمارش بالا / ساعت Dn: 4 مرحله (همراه با تصاویر)
تصویری: گوز زدن پریانکا چوپرا هنرپیشه بالیوود در یکی از برنامه های لایف تلویزیونی |C&C 2024, نوامبر
Anonim
ساعت بازنشستگی / شمارش بالا / ساعت Dn
ساعت بازنشستگی / شمارش بالا / ساعت Dn

من چند عدد از این نمایشگرهای نقطه ای ماتریس 8x8 LED را در کشو داشتم و به این فکر می کردم که با آنها چه کنم. با الهام از دستورالعمل های دیگر ، این ایده را داشتم که یک صفحه شمارش معکوس/بالا برای شمارش معکوس تا تاریخ/زمان آینده ایجاد کنم و اگر زمان مورد نظر به پایان رسید ، از آن شمارش کنید. این ساعت ساعت بازنشستگی ام را روی قفسه نشسته ام.

ایده انداختن آن در بطری بیشتر هنگام تصور در مورد یک تصادف بود. دیگران کشتی ها را داخل بطری می گذارند ، چرا ساعت نمی گذارند؟

من همچنین می خواستم ساعت را از ساعت تابستانی اطاعت کنم و البته هنگام جدا شدن از برق تنظیمات و زمان را به خاطر بسپارم. من ساعت را از طریق USB تغذیه می کنم و اگر می خواهید کاری متفاوت انجام دهید یا فقط ویژگی هایی را به کد اضافه کنید ، قابل برنامه ریزی مجدد است. کد بسیار ساده است و همچنین می تواند از بهینه سازی زیادی استفاده کند. من به میزان مصرف RAM توجه زیادی نکردم باید اعتراف کنم. اگر زمان و انگیزه لازم را پیدا کنم ، دوباره به آن برمی گردم.

تدارکات

1. آردوینو نانو

2. RTC (من از DS3231 معمولی که دارای EEPROM است نیز استفاده کردم)

3. ماژول ماتریس نقطه ای 12x8x8. (من چهار ماژول داشتم که ترسیم آنها راحت تر است)

4. LDR برای تنظیم روشنایی صفحه نمایش

5. مقاومت 10 کیلو اهم

6. خازن 5x100 uF سرکوب خوشه ها از صفحه نمایش

7. برای افزایش کنتراست ماژول های 8x8 ، از "فیلم پنجره" با رنگ تیره استفاده کردم. در صورت عدم روشن بودن صفحه ، LED ها به صورت نقاط سفید نشان داده می شوند. فیلم پنجره آن را به یک رنگ مشکی براق تبدیل می کند.

مرحله 1: قطعات را وصل کنید

قطعات را وصل کنید
قطعات را وصل کنید
قطعات را وصل کنید
قطعات را وصل کنید

من از سه صفحه نمایش چهارگانه برای مونتاژ نمایشگر استفاده کردم. برای نشان دادن یک تاریخ با خطوط کوچک و زمان با دو نقطه ، ما به فضایی برای 8 کاراکتر نیاز داریم. با استفاده از فونت معمولی 5x7 ، ما به 6 بلوک 8x8 در هر ردیف نیاز داریم. من یکی از چهار بلوک را به نصف تقسیم کردم و آنها را به صورت دو ردیف در شش بلوک مرتب کردم ، همانطور که در شماتیک ورق نشان داده شده است.

مرحله 2: قطعات چاپ سه بعدی

قطعات چاپ سه بعدی
قطعات چاپ سه بعدی
قطعات چاپ سه بعدی
قطعات چاپ سه بعدی
قطعات چاپ سه بعدی
قطعات چاپ سه بعدی

برای نگه داشتن دو ردیف صفحه نمایش و قرار دادن آنها در بطری ، حلقه های دور را برای قاب نمایشگر چاپ کردم. فایلهایی را که استفاده کردم در زیر اضافه کردم. برای اینکه بتوانید اینها را بدون پشتیبانی چاپ کنید ، آنها را به قسمت هایی تقسیم می کنید. تصویر صفحه نشان می دهد که دو حلقه به قاب صفحه چسبانده شده اند. روکش گردن بطری دارای سه دکمه است که بین حالت های صفحه نمایش و تنظیم زمان فعلی و زمان هدف تغییر می کند. جلد بطری بطری را که در TPU چاپ کردم اجازه می دهد تا کابل USB را بدون قطع اتصالات به داخل کاور بکشید و آن را با چند سیم سیم ببندید. فراموش کردم ذکر کنم که من از یک بطری شراب 1.5 لیتری استفاده کردم که در پایین آن را برش دادم. تمام قطعاتی که باید چاپ شوند روی تخت چاپگر 20x20 سانتی متر (8x8 اینچ) نصب می شوند.

مرحله 3: کد

کد آردوینو از چند کتابخانه متداول استفاده می کند.

MD_MAX72xx

SPI

سیم

RTClib

منطقه زمانی

TimeLib

چند خط در فایل INO وجود دارد که ممکن است نیاز به تغییر داشته باشد:

خط 38: #تعریف HARDWARE_TYPE MD_MAX72XX:: FC16_HW <- بستگی به ماژول 8x8 و جهت آن دارد

به جای FC16_HW می تواند یکی از موارد زیر باشد:

- MD_MAX72XX:: PAROLA_HW

- MD_MAX72XX:: GENERIC_HW

- MD_MAX72XX:: ICSTATION_HW

- MD_MAX72XX:: FC16_HW

کد از تنظیمات زمان مرکزی ایالات متحده استفاده می کند و نیاز به تنظیم برای سایر مناطق زمانی دارد:

خط 53/54:

TimeChangeRule myDST = {"CDT" ، Second، Sun، Mar، 2، -300}؛ // زمان نور روز UTC -5TimeChangeRule mySTD = {"CST" ، اول ، یکشنبه ، نوامبر ، 2 ، -360} ؛ // زمان استاندارد UTC -6

این به راحتی قابل تنظیم است. نام CST/CDT فقط برای داشتن مرجع است. من مخفف سه حرفی را نمایش نمی دهم ، بنابراین مهم نیست. پارامترهای بعدی اشاره به این دارد که تغییر در کدام روز در ماه اتفاق می افتد. تنظیمات در چند دقیقه انجام می شود ، بنابراین مکانهایی که از تنظیمات +/- 30 دقیقه استفاده می کنند نیز کار خواهند کرد.

RTC بصورت داخلی بر روی UTC-Time اجرا می شود و به کتابخانه منطقه زمانی اجازه می دهد تا مطابق برنامه کار کند. شاید تعجب کنید که چرا کد بر خلاف تراشه ساعت استفاده شده به تراشه قدیمی DS1307 اشاره می کند ، اما این مهم نیست. کتابخانه با هر دو تراشه خوب کار می کند. DS1307 تمایل به دور شدن بیشتر از DS3132 دارد. ساعت ترجیحی DS3132 است. برای کسانی که مایل به اضافه کردن زمان اینترنت هستند ، ESP8266 کار را به راحتی انجام می دهد. این می تواند RTC را منسوخ کند. اگر این تغییرات را انجام می دهید ، از Arduino EEPROM برای ذخیره زمان موردنظر استفاده کنید ، من از RTC EEPROM برای این کار استفاده کردم.

مرحله 4: عملکرد و تنظیمات

عملکرد و تنظیمات
عملکرد و تنظیمات
عملکرد و تنظیمات
عملکرد و تنظیمات
عملکرد و تنظیمات
عملکرد و تنظیمات

سه دکمه وجود دارد

1. منو / تنظیمات

2. بالا

3. پایین

دکمه منو دوچرخه سواری را از طریق سه نوع نمایشگر امکان پذیر می کند: زمان کنونی ، زمان هدف ، زمان دلتا. زمان دلتا تعداد روزها ، HH/MM/SS بین زمان فعلی و زمان هدف را نشان می دهد. اگر هدف در آینده باشد یا t+ و اگر هدف در گذشته باشد شمارش معکوس را نشان می دهد.

برای تنظیم زمان فعلی یا هدف ، زمان فعلی یا نمایش زمان هدف را انتخاب کنید. برای تغییر زمان ، دکمه منو را به مدت 2 ثانیه نگه دارید و رها کنید که شما را وارد حالت تنظیمات می کند. همسایه "/" یا ":" به "" تبدیل می شود تا نشان دهد کدام رقم را تنظیم می کنید. از دکمه های بالا/پایین برای تنظیم ساعت hh/mm/ss و mm/dd/yy استفاده کنید. من تنظیمات را برای تغییر بین mm/dd/yy و dd/mm/yy اضافه نکردم ، این نیاز به تغییر کد دارد یا شاید کسی مایل به افزودن این ویژگی باشد.

متوجه خواهید شد که اگر دقیقه را به بالای 59 یا زیر 00 برسانید ، نمایش ساعت نیز تنظیم می شود. در صورت عبور از زیر 0 یا بیشتر از حداکثر برای این رقم ، ثانیه ، ساعت و روز تغییر مقدار بالاتر صادق است. من این کار را برای جلوگیری از برنامه ریزی محدودیت های مختلف ماه های فردی انجام دادم و اگر فوریه به 29 روز در یک سال کبیسه نیاز داشته باشد. تنظیم زمان در واقع در دوره زمان انجام می شود ، ثانیه از ژانویه 1-1970.

یک ویدیوی ساده برای نشان دادن شمارش اضافه کردم. من می خواستم اینها را مانند صفحه نمایش چرخنده بسازم. اگر دوست دارید مدت زمان تغییر را تنظیم کنید ، خط 69 در INO به شما چند گزینه برای سرعت بخشیدن یا کند کردن تغییر می دهد. 120 میلی ثانیه باعث می شود که ارقام به اندازه کافی آهسته حرکت کنند زیرا این یک چرخ دائمی است.

امیدوارم از این مطلب آموزنده لذت برده باشید

پاتریک گشاویندنر

توصیه شده: