آردوینو آموزش آردوینو پروژه های آردوینو

آموزش ساخت ساعت دیجیتال ماژول DS1307 و نمایشگر TM1637

arduino-digital-clock-ds1307-segment--digispark
نوشته شده توسط پریسا پوربلورچیان

زمان و سنجش زمان از پارامترهای مهم ساخت پروژه های اینترنت اشیا است. در آموزش ساخت ساعت دیجیتال با آردوینو و سگمنت به بررسی کامل کدها و راه اندازی آن پرداختیم. حال با توجه به نیاز و درخواست کاربران آموزش ساخت ساعت دیجیتال با استفاده از ماژول ساعت دقیق DS1307 را در این پست در اختیار شما قرار داده‌ایم. این آموزش توسط یکی از کاربران فعال ما ارسال شده است. از این رو از همکاری کاربران در راستای تحقق اهداف بزرگ از جمله رشد سطح علمی جامعه و تلاش برای تبادل اطلاعات کاربران با یکدیگر در مرجع تخصصی الکترونیک دیجی اسپارک صمیمانه سپاسگزاریم. در ادامه این آموزش با مرجع تخصصی آردوینو دیجی اسپارکهمراه باشید.

 

ساختار ماژول سگمنت ۷Segment 4 Digit با تراشه TM1637

ماژول سگمنت، نوعی نمایشگر دیودی است. هر بلوک از سون سگمنت از ۷ ال ای دی مجزا تشکیل شده است. ماژول سگمنت به کار رفته یک نمایشگر چهار دیجیت با ابعاد ۴۲*۲۴ میلی متر است. تراشه این ماژول TM1637 می‌باشد و دارای پروتکل ارتباطی I2C است. همچنین این ماژول دارای ۴ پایه به ترتیب CLK ,DIN ,VCC ,GND بوده و ولتاژ کاری آن بین ۳٫۵ تا ۵ ولت است.

 

ساختار ماژول ماژول ساعت DS1307

کاربرد ماژول DS1307 محصول dallas محاسبه و نگهداری زمان واقعی real time clock می‌باشد. ماژول ساعت دقیق DS1307 می‌تواند ساعت، دقیقه، ثانیه، روز، ماه، سال و ایام هفته را نگهداری و پردازش کند. باطری لیتیومی این ماژول امکان تغذیه و نگهداری زمان DS1307 را به مدت چندین سال فراهم می‌کند. ماژول ساعت DS1307 از طریق ارتباط ۲ سیمه I2C به آردوینو متصل می‌شود. بر روی این ماژول علاوه بر RTC، یک EEPROM سریال به شماره ۲۴C32 با حافظه ۳۲ کیلوبیت تعبیه شده که از طریق رابط I2C مشترک می‌توان به آن دسترسی داشت. همچنین می‌توان بر روی آن حسگر دما نیز به کار برد.

 

وسایل مورد نیاز:

ماژول سگمنت ۷Segment 4 Digit با تراشه TM1637

 ماژول ساعت DS1307 به همراه باتری Battery

کابل فلت ۴۰ رشته نری به مادگی Male to Female

برد آردوینو Arduino Uno R3 با تراشه R3 اورجینال

 

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

ابتدا اتصالات ماژول ساعت دقیق DS1307 به برد آردوینو را انجام می‌دهیم:

  • پین SLK ماژول ساعت دقیق DS1307 را به پین آنالوگ A5 آردوینو وصل کنید.
  • پین SDA ماژول ساعت دقیق DS1307 را به پبن آنالوگ A4 آردوینو وصل کنید.
  • پین VCC ماژول ساعت دقیق DS1307 را به پین ۳٫۳ ولت آردوینو وصل کنید.
  • پین GND ماژول ساعت دقیق DS1307 را به پبن GND آردوینو وصل کنید.

 

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

  • پین CLK ماژول سگمنت را به پین ۶ آردوینو اتصال دهید.
  • پین DIO ماژول سگمنت را به پبن ۵ آردوینو اتصال دهید.
  • پین VCC ماژول سگمنت را به پین ۵ ولت آردوینو اتصال دهید.
  • پین GND ماژول سگمنت را به پبن GND آردوینو اتصال دهید.

 

کتابخانه آردوینو Arduino:

کتابخانه‌های مورد نیاز برای آپلود کدها به ترتیب زیر می‌باشد.

  1. (DS1307RTC (by Michael Marglois Version 1.4.0
  2. (Time (by Michael Marglois Version 1.5.0)
  3. (SevenSegmentTM1637 (by Bram Harmsen Version 1.0.0
  4. (TM1637 (Version unknown
  5. (Wire (by Arduino Version 1.0.0

لینک دانلود کتابخانه‌ها در صفحه محصول ماژول ساعت DS1307 به همراه باتری Battery و ماژول سگمنت ۷Segment 4 Digit با تراشه TM1637 قرار گرفته شده است و می‌توانید دانلود کنید. توجه کنید که کتابخانه wire در قسمت Sketch – include library به صورت پیشفرض قرار گرفته شده است.

 

کد برنامه :

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

 

درباره نویسنده

پریسا پوربلورچیان

تبادل نظر و رفع عیب با ثبت دیدگاه

۱۰ دیدگاه

  • سلام خسته نباشید
    می‌دونم اینجا جاش نیست ولی میخواستم بدونم میشه کاری کرد که با گوشی و یک مدار که به گوشی وصل بشه کنترل مادون قرمز ساخت
    یعنی برای گوشی هایی که سنسور مادون قرمز ندارن یه فرستنده خارجی ساخت البته با تقویت کننده.
    ممنون میشم یه راهنمایی بفرمایید

  • سلام
    یک سوال ساده اما مهم.
    اگر کسی بخواهد که به جای استفاده از بردهای آموزشی خودش بردی رو طراحی کنه باید برای تامین کلاک میکروی ARM که مثلاً قرار هست با فرکانس ۱۰۰MHz یا بالاتر کار کنه باید از چه روشی استفاده کرد؟
    خود میکرو اوسیلاتور داخلی داره تا جایی که من تو کاتالوگ ها خوندم نهایتاً تا ۲۵MHz رو ساپورت میکنه
    آیا از کریستال استفاده می کنند؟
    اصلاً کریستالی با این فرکانس پیدا میشه؟

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

  • درود
    بخاطر دقّت نظر و دلسوزی شما و همکارانتون نسبت به خواسته های کاربران و نیز پاسخگویی به سئوالاتشون، بواقع سپاسگذارم..
    ماژول ساعت دقیق DS1307 دچار دو مشکل میشه. یا از ساعت دقیق عقب میفته، یا سریع تر ثانیه میندازه. جایی خونده بودم که مشکل نخست غیرقابل رفعه. امّا در خصوص مشکل دوّم، درست یادم نیست; مثل اینکه باید سر کریستال رو به زمین مدار متّصل کنیم و یادمه تأکید شده بود به هیچ عنوان از لحیم کردن سر کریستال نبایستی استفاده کرد. آیا این راه درسته ؟ و اگر بله، چطور بدون لحیم کردن این کار رو انجام بدم ؟
    سپاسم

    • سلام
      از دقت نظر شما سپاسگزارم.
      در واقع این همان کدهاى ارسالی شماست، اگر در این زمینه راهکارى دارید میتوانید بیان کنید، از دیگر کاربران هم که تجربه کافى دارند تقاضا دارم در این بحث شرکت کنند.

      • درود مجدّد
        مشکل رو حل کردم. از یک موتور ساعت دیواری، المان کریستالش رو جایگزین کریستال ماژول کردم.
        چون ساعت دیواری یک ساعت همگانیه، بنابراین حتّی اگر موتور اون ساعت چینی هم باشه، همیشه از مرغوب ترین کریستال ها در ساخت اون استفاده میشه. بجای خرید کریستال از بازار، بهترین گزینه جایگزینی اون با کریستال موجود در موتور یک ساعت دیواریه..
        سپاسم

        • ایده شما جالب است ولی به نظر بنده اینطور درست نیست. باید علمی تر بررسی شود. حتما اطلاعات کریستال را بیان کنید تا توجیه بهتری برای این قضیه داشته باشیم.

          • این کریستال که به نام کریستال ساعت معروف است ، با فرکانس ۳۲۷۶۸ هرتز کار می کند که از آن برای ایجاد تاخیرهای دقیق زمانی مانند ۱ ثانیه استفاده می شود و در مداراتی مانند تایمر ، ساعت ، کرنومتر و . .. کاربرد دارد .