ساخت ساعت حرفه ای با ماژول تابلو روان Max7219 و آردوینو

حتما تا به حال در بانک ها و برخی ادارات با ساعت های دیجیتالی بزرگ روبرو شده اید که ساعت و تاریخ را با افکت های گوناگون بر روی یک تابلو روان نمایش می دهند. شاید شما هم بارها مثل من به این موضوع فکر کرده اید که یکی از آنها را تهیه کنید و در اتاق و یا محل کار خود داشته باشید، اما به دلیل قیمت بالا و یا پیدا نکردن آن در بازار هنوز موفق به تهیه آن نشده اید. اما از این موضوع دلسرد نشوید، چون تصمیم داریم در این مطلب شما را با نحوه ساخت یک ساعت دیجیتال حرفه ای با قابلیت نمایش ساعت و تاریخ بر روی تابلو روان با 4 افکت مختلف توسط برد آردوینو آشنا کنیم.

بعد قبل
ساخت ساعت حرفه ای با ماژول تابلو روان Max7219 و آردوینو
ساخت ساعت حرفه ای با ماژول تابلو روان Max7219 و آردوینو
بعد قبل

ساعت طراحی شده در این پروژه می تواند زمان را با 4 افکت زیر بر روی ماژول تابلو روان Max7219 نمایش دهد:

:: حالت پایه = در این حالت ساعت به صورت ساعت های دیجیتالی مچی به صورت ساده نمایش داده می شود.

:: حالت کوچک = در این حالت علاوه بر نمایش ساعت به صورت حالت پایه، ثانیه شمار نیز به صورت کوچک در کنار ساعت و دقیقه نمایش داده می شود.

:: حالت اسلاید = در این حالت ساعت و دقیقه از سمت بالای تابلو روان به سمت پایین به صورت رقم به رقم با یک افکت بسیار زیبا به صورت اسلاید بر روی تابلو روان نمایش داده می شود.

:: حالت کلمه = در این حالت مقدار ساعت و دقیقه به صورت حروف نوشتاری بر روی تابلو روان نمایش داده می شود که این موضوع باعث می شود نظر مردم را برای فهمیدن ساعت به سمت خود جلب کند.

لیست قطعات مورد نیاز

برد آردوینو Arduino UNO R3 مدل DIP1 عدد
ماژول نمایشگر مدل LED ماتریسی رنگ قرمز با چیپ MAX72191 عدد
ماژول حافظه دار محاسبه ساعت و تاریخ DS32311 عدد
تک سوئیچ 2 پایه DIP سایز 6x6x5 میلیمتر2 عدد
سیم جامپر برد بوردی مدل یک سر نری - مادگی (سری 40تایی)1 عدد
آداپتور 5V ولت 2A آمپر1 عدد

مرحله اول : اتصال کلید به برد آردوینو

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

1- یکی از پایه های تک سوئیچ اول و تک سوئیچ دوم را به پایه GND بر روی برد آردوینو متصل کنید.

2- پایه دیگر تک سوئیچ اول و تک سوئیچ دوم را به ترتیب به پایه های دیجیتال شماره 11 و 12 بر روی برد آردوینو متصل کنید.

اتصال کلید به برد آردوینو

مرحله دوم : اتصال ماژول نمایشگر سگمنت دات ماتریس به برد آردوینو

1- پایه VCC ماژول نمایشگر تابلو روان را به پایه 5V یا همان پایه VCC برد آردوینو متصل کنید.

2- پایه GND ماژول نمایشگر تابلو روان را به پایه GND بر روی برد آردوینو متصل کنید.

3- پایه DIN ماژول نمایشگر تابلو روان را به پایه دیجیتال شماره 5 برد آردوینو متصل کنید.

4- پایه CS ماژول نمایشگر تابلو روان را به پایه دیجیتال شماره 4 برد آردوینو متصل کنید.

5- پایه CLK ماژول نمایشگر تابلو روان را به پایه دیجیتال شماره 3 برد آردوینو متصل کنید.

اتصال ماژول نمایشگر سگمنت دات ماتریس 32x8 با تراشه Max7219 به برد آردوینو

مرحله سوم : اتصال ماژول ساعت DS3231 یا ماژول ساعت DS1307 به برد آردوینو

1- پایه VCC ماژول ساعت DS3231 یا DS1307 را به پایه 3.3V بر روی برد آردوینو متصل کنید.

2- پایه GND ماژول ساعت DS3231 یا DS1307 را به پایه GND بر روی برد آردوینو متصل کنید.

3- پایه SDA ماژول ساعت DS3231 یا DS1307 را به پایه آنالوگ شماره A4 برد آردوینو متصل کنید.

3- پایه SCL ماژول ساعت DS3231 یا DS1307 را به پایه آنالوگ شماره A5 برد آردوینو متصل کنید.

اتصال ماژول ساعت DS3231 یا ماژول ساعت DS1307 به برد آردوینو

مرحله چهارم : نصب کتابخانه LedControl.h در نرم افزار آردوینو

1- نرم افزار آردوینو را بر روی سیستم خود اجرا کنید، اگر بار اول است که با برد Arduino کار می کنید و این نرم افزار را بر روی سیستم خود ندارید، می توانید نرم افزار آردوینو و نحوه نصب آن را از اینجا دریافت نمائید.

2- کتابخانه LedControl.h را از اینجا دانلود کنید.

3- مسیر زیر را از طریق منوی نوار ابزار در نرم افزار آردوینو طی کنید و سپس در پنجره نهایی فایل کتابخانه LedControl را که دانلود کرده اید، جهت افزودن انتخاب کنید.

Sketch > Include Library > Add .ZIP Library…

مرحله پنجم : نصب کتابخانه FontLEDClock.h در نرم افزار آردوینو

1- کتابخانه FontLEDClock.h را از اینجا دانلود کنید.

2- مسیر زیر را از طریق منوی نوار ابزار در نرم افزار آردوینو طی کنید و سپس در پنجره نهایی فایل کتابخانه FontLEDClock را که دانلود کرده اید، جهت افزودن انتخاب کنید.

Sketch > Include Library > Add .ZIP Library…

مرحله ششم : نصب کتابخانه RTClib.h در نرم افزار آردوینو

1- کتابخانه RTClib.h را از اینجا دانلود کنید.

2- مسیر زیر را از طریق منوی نوار ابزار در نرم افزار آردوینو طی کنید و سپس در پنجره نهایی فایل کتابخانه RTClib را که دانلود کرده اید، جهت افزودن انتخاب کنید.

Sketch > Include Library > Add .ZIP Library…

مرحله هفتم : نصب کتابخانه Button.h در نرم افزار آردوینو

1- کتابخانه Button.h را از اینجا دانلود کنید.

2- مسیر زیر را از طریق منوی نوار ابزار در نرم افزار آردوینو طی کنید و سپس در پنجره نهایی فایل کتابخانه Button را که دانلود کرده اید، جهت افزودن انتخاب کنید.

Sketch > Include Library > Add .ZIP Library…

مرحله هشتم : پروگرام کردن برنامه بر روی برد آردوینو

1- برد آردوینو را از طریق کابل USB به کامپیوتر متصل کنید.

2- نرم افزار آردوینو را بر روی سیستم خود اجرا کنید.

3- پس از اجرای نرم افزار آردوینو، از طریق منوی File بر روی گزینه New کلیک کنید.

4- تمامی کدهای زیر را کپی کنید و در پنجره جدید باز شده بچسبانید (Paste).

5- حال از طریق منوی File گزینه Save را انتخاب کنید و برنامه را در محل دلخواه خود ذخیره کنید.

6- پس از ذخیره برنامه از طریق منوی Tools به زیر منوی Board رفته و از لیست کشویی باز شده آیتم Arduino/Genuino Uno را انتخاب کنید.

7- دوباره از طریق همان منوی Tools به زیر منوی Port رفته و از لیست کشویی باز شده شماره پورت USB که از طریق آن برد آردینو به کامپیوتر متصل شده است را انتخاب کنید.

8- در پایان برای انتقال برنامه به برد آردوینو کافیست تا بر روی آیکون آیکون پروگرام کردن برنامه بر روی برد آردوینو در نرم افزار آردوینو در نرم افزار آردوینو کلیک کنید.

مرحله نهم : راه اندازی پروژه

1- برد آردوینو را به صورت کامل از کامپیوتر جدا کنید.

2- توسط یک آداپتور 5 ولت DC با حداقل جریان 1 آمپر برد آردوینو را راه اندازی کنید.

3- در صورتیکه در هنگام ساخت پروژه، تمامی مراحل قبل را به درستی انجام داده باشید باید ساعت را بر روی ماژول نمایشگر سگمنت دات ماتریس 32×8 با تراشه Max7219 مشاهده کنید.

ویدیو ضبط شده از نحوه عملکرد پروژه

دانلود ویدئو با لینک مستقیم از سرورهای پرقدرت الکترونیک 98

 اطلاعات پروژه

 رمز فایل : www.electronics98.com

 حجم فایل : 368 کیلوبایت

 محیط برنامه نویسی : Arduino (IDE)

 برنامه نویسی شده به زبان : ترکیبی از برنامه نویسی به زبان سی (C) یا سی پلاس پلاس (++C)

 نویسنده : فرهاد اکبری

 تاریخ انتشار : 11 جولای 2019

69 دیدگاه

  1. سلام
    یه سوالی داشتم
    قسمت <include <FontLEDClock.h #
    با ید نارنجی بشه چون که من کتاب خانه رو روی برنامه نصب کردم و اینکه #include "LedControl.h"
    درسته ؟؟؟

  2. فرهاد اکبری

    سلام دوست عزیز
    رنگ دستورات مهم نیست، مهمترین موضوع اطمینان از نصب صحیح کتابخانه ها در نرم افزار آردوینو است. در صورت عدم نصب کتابخانه ها در هنگام کامپایل کردن برنامه با خطا روبرو خواهید شد.

  3. سلام به هنگام کامپایل برای خط زیر خطا می دهد چرا؟
    Wire1.begin();

    خطا به صورت زیر هست

    ‘Wire1’ was not declared in this scope; did you mean ‘Wire’?

  4. سلام دوست عزیز
    ابتدا مطمئن شوید تمامی کتابخانه ها به درستی بر روی نرم افزار آردوینو شما نصب شده اند سپس بررسی کنید که برنامه به صورت صحیح و کامل کپی گردیده.

  5. سلام دوست عزیز ممنون بابت پروژه خوبتون
    عزیز اگه بخوایم بلوک های دات ماتریسرو به 6 عدد ارتقا بدیم که ثانیه شمار هم به ساعت در وضعیت بیسیک اضافه بشه چه کاری باید انجام بدم ممنونم از لطفتون

  6. سلام من این مدارا بستم برنامه را کامل کپی کردم ولی چندتا ارور توی برنامه موقع کامپایل نشون داد درصورتی که هم کتابخونه هارو کامل نصب کردم و تمام مراحل شما رو انجام دادم.
    لطفا جواب بدین

  7. سلام خسته نباشید.
    میخواستم بدونم برای استفاده از ماژول ساعت DS1307 لازمه که روش باتری بزارم یانه؟
    چون همه کارایی که گفتینا انجام دادم و روی دات ماتریس فقط چهار رقم ثابت نشون داده میشه و حتی بعد از نیم ساعت تغییری حاصل نشد و همچنین وقتی خواستم ساعتا تنظیم کنم با اینکه توی تنظیمات میره ولی بعد از بیرون اومدن ازش هنوز همونجوری مثل قبلا باقی میمونه…
    لطفا راهنمایی کنین.ممنون

  8. میتونین بگین از کجای برنامه میشه E98 رو که اول کار رو صفحه میاد رو عوض یا حذف کرد؟

  9. سلام دوست عزیز
    بله، برای اینکه بعد از قطع تغذیه ساعت ریست نشود باید بر روی ماژول ساعت یک باتری سکه ای قرار دهید. همچنین در صورتیکه ساعت به صورت ثابت نمایش داده می شود و امکان تنظیم آن وجود ندارد، مشکل از سمت ماژول ساعت است که باید اتصالات آن به برد آردوینو را به صورت کامل بررسی کنید.

  10. سلام برای راه اندازی این مدار بدون استفاده از کابل آردوینو و با باتری از چه نوع باتری استفاده کنیم و به کجا متصل کنیم؟

  11. سلام دوست عزیز
    می توانید دو عدد باتری لیتیوم یون 3.7v سایز 18650 را با یکدیگر سری کنید و از طریق جک تغذیه موجود بر روی برد آردوینو با رعایت پلاریته به برد آردوینو متصل کنید.

  12. سلام
    من این مدار رو بستم ولی ترتیب نوشته و ساعت درست نمایش داده نمیشه
    انگاری دات ماتریس ها جابه جا هستن
    چطوری میتونم حلش کنم

  13. سلام دوست عزیز
    به این سوال در نظرات گذشته پاسخ داده شده است.
    در صورتیکه ساعت برعکس نمایش داده می شود، می توانید خط 117 الی 131 برنامه را حذف کنید و کدهای زیر را به جای آن قرار دهید:

  14. سلام دوست عزیز اول از همه بابت زحماتی که میکشین کمال تشکر رو دارم بنده این ساعت رو ساختم و کاملا درست کار میکنه خیلی ممنون و تشکر میکنم . میخواستم بدونم چطوری میتونم نوشته های اولی که نوشته میشه رو گسترش بدم ( E98 . Hello!) ممنون میشم راهنمایی بفرمایید

  15. با سلام و احترام
    در خطوط 173 و 174 برنامه می توانید نام سایت را تعویض کنید.

 شرایط و قوانین ثبت دیدگاه

 فارسی بنویسید و از کیبورد فارسی استفاده کنید.

 لطفاً بیش‌از‌حدِ معمول، شکلک یا ایموجی استفاده نکنید و از کشیدن حروف یا کلمات با صفحه‌کلید بپرهیزید.

 به کاربران و سایر اشخاص احترام بگذارید. پیام‌هایی که شامل محتوای توهین‌آمیز و کلمات نامناسب باشند، حذف می‌شوند.

 از ارسال لینک‌های سایت‌های دیگر و ارایه‌ی اطلاعات شخصی خودتان مثل شماره تماس، ایمیل و آی‌دی شبکه‌های اجتماعی پرهیز کنید.