این یک ساعت نسبتاً ساده برای ساخت است، از نظر سخت افزار مورد نیاز و از نظر اتصال تمام سیم ها. پیچیدگی در نرم افزار نهفته است، که به راحتی به عنوان بخشی از این دستورالعمل گنجانده شده است
این دستورالعمل چند چیز را نشان می دهد:
* نگه داشتن زمان نسبتاً دقیق در آردوینو بدون استفاده از ساعت واقعی (RTC)
* استفاده از نمایشگر ساده ساعت - نوعی که در اکثر ساعت های زنگ دار می بینید. در این مورد LTC-617.
* مولتیپلکس کردن یک نمایشگر برای نشان دادن آن، همه ارقام به طور همزمان نشان داده می شوند، حتی اگر نمایشگر فقط یک رقم را در یک زمان نمایش دهد.
* کنترل روشنایی ارقام جداگانه (ال ای دی بیشتر روشن = رقم کم نور)
من در ابتدا این را برای یک پلتفرم متفاوت ساختم و تصمیم گرفتم که زمان آن رسیده است که آن را به آردوینو پورت کنم!
امیدوارم از این آموزش لذت ببرید و آن را مفید بدانید - شروعی عالی برای بسیاری از پروژه های شیطانی است!
مرحله 1: قطعات
برای این Instructable شما نیاز دارید:
1 آردوینو (من از Arduino-nano استفاده کردم)
1 نمایشگر ساعت LTC-617 (شاید لازم باشد هدرهای نر را روی آن لحیم کنید)
سیم های جامپر زیادی
1 دکمه
1 مقاومت: 10k یا نزدیک (برای جلوگیری از کوتاهی بین gnd و 5v با فشار دادن دکمه)
برای من این یک پروژه بدون هزینه بود زیرا من قبلاً همه قسمت ها را داشتم.
صفحه نمایش ساعت بخشی از کیف دستی بود که مدتها پیش خریده بودم. من تصور می کنم آنها باید بسیار ارزان باشند و حتی ممکن است از رادیوهای ساعت قدیمی قابل نجات باشند.
دکمهها و مقاومتهای کوچک نیز از وسایل الکترونیکی قدیمی (مثلاً دکمههای تنظیم مجدد از رایانههای قدیمی) قابل نجات هستند و همچنین خرید آنها بسیار ارزان است.
آردوینو از حدود 15 دلار در eBay شروع می شود، اگرچه من انتظار دارم که بعید است کسی از آن فقط برای یک پروژه استفاده کند!
من از برد برد برای اتصالات آسان استفاده کردم، اما این ضروری نیست.
مرحله 2: درباره نمایشگر ساعت LTC-617
من چند سال پیش چندین مورد از این نمایشگرها را در یک کیسه لوازم الکترونیکی دریافت کردم، بنابراین تصمیم گرفتم از یکی استفاده کنم.
این نمایشگر خاص هیچ هوشمندی به آن اضافه نشده است. همه پین ها مستقیماً به LED های نمایشگر می روند. این بدان معناست که هوشمندها باید از نرم افزاری که نمایشگر را کنترل می کند، بیایند.
از تصویر پیوست متوجه خواهید شد که هر یک از 4 رقم توسط یک خط IO کنترل می شود و تمام ارقام خطوط IO را برای 7 بخش جداگانه به اشتراک می گذارند. این بدان معناست که شما نمی توانید دو رقم مختلف را همزمان نشان دهید.
برای دور زدن این محدودیت، از آردوینو استفاده می کنیم تا هر رقم را فقط برای کسری از ثانیه نشان دهیم. وقتی این کار به طور مکرر و به اندازه کافی سریع انجام می شود، چشمان ما فقط یک صفحه نمایش ثابت را می بینند. در کد میتوانید زمانبندی را تغییر دهید تا هر رقم آهستهتر چشمک بزند، اگر میخواهید ببینید چگونه کار میکند.
شما می توانید برخی از پین های ورودی/خروجی و پیچیدگی نرم افزار را با استفاده از رمزگشای باینری 4511 (BCD) تا 7 قطعه ای ذخیره کنید، که به شما امکان می دهد از 3 پین آردوینو برای ارسال یک عدد باینری به تراشه رمزگشا استفاده کنید، که سپس تمام کارها را انجام می دهد. تشخیص اینکه کدام LED در رقم باید روشن شود.
در اینجا پیوند خوبی وجود دارد که نحوه عملکرد تراشه رمزگشا را توضیح می دهد: http://www.doctronics.co.uk/4511.htm
این پیوند همچنین حاوی جدول منطقی است که نشان می دهد کدام بخش ها باید برای هر عدد معین روشن باشند. من در هنگام ساختن نرم افزارم از چیزی شبیه به این استفاده کردم.
پس هدف از همه اینها چه بود؟ منظور من فقط این است که نمایشگرهای مختلف رفتار متفاوتی دارند و کد باید بر این اساس اصلاح شود.