فروشنده
تاریخ انتشار
7 فروردین 1401
تعداد بازدید
764 بازدید
۱۵,۰۰۰ تومان

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

حجم قایل برای دانلود 310 کیلوبایت.

 

تعریف پروژه:

می­خواهیم با استفاده از آی سی ساعت به شماره DS1307 که دارای ساعت و تقویم میلادی تا سال 2100 در حافظه خود می­باشد و میکروکنترلر Atmega8 و LCD کاراکتری یک ساعت دیجیتالی با قابلیت نمایش ساعت و تاریخ میلادی و قابلیت تبدیل سال میلادی به شمسی با احتساب سالهای کبیسه و همچنین دارای قابلیت نمایش روز هفته بسازیم. همچنین باید با قطع برق میکرو تنظیمات تاریخ و ساعت حفظ شود.

 

اهداف:

هدف از اجرای این پروژه آشنایی با RTC خارجی و نحوه استفاده از آن به کمک میکروکنترلر و نیز محاسبه فرمولهای تبدیل تاریخ میلادی به شمسی با احتساب سالهای کبیسه تعیین می­گردد.

 

طراحی:

برای طراحی این پروژه باید اول با آی سی DS1307 و پروتکل ارسال و دریافت DATA در آن آشنا شویم. طبق دفترچه راهنمای مربوطه, این آی سی به وسیله پروتکل I2C می­تواند با میکروکنترلر ارتباط برقرار کند. و آدرس نوشتن و خواندن از این آی سی به ترتیب HD0 و HD1 می­باشند. در شکل زیر نحوه سیم بندی DS1307 با میکروکنترلر نشان داده شده است. و از یک باطری 3v برای تغذیه پایه 3 آی سی ساعت استفاده گردیده است این باطری تغذیه RTC را هنگام قطع برق مدار تامین کرده و باعث می­شود تنظیمات ساعت و تاریخ از بین نرود. و ساعت همچنان به کار خود ادامه می­دهد. با توجه به دفترچه راهنمای این آی سی مصرف جریان برق از باطری 3v در حد 500nA می­باشد که می­تواند سالها جریان برق RTC را تامین کند.

 

الگوریتم تبدیل تاریخ میلادی به تاریخ شمسی:

برای نوشتن این الگوریتم به اختلاف روزهای میان اولین روز سال میلادی و اولین روز سال شمسی نیاز داریم که این اختلاف روز در صورتی که سال کبیسه باشد یا نباشد 79 روز است. برای تشخیص کبیسه بودن یا نبودن سال از روش زیر استفاده می کنیم:

اگر سال داده شده بر 100و400 بخشپذیر باشد یا بر 100 بخشپذیر نباشد و بر4 بخشپذیر باشد آنگاه سال کبیسه است، در غیر این صورت سال کبیسه نیست. با توجه به کبیسه بودن یا کبیسه نبودن سال مشخص می کنیم که در کدامین روز سال میلادی قرار داریم.

دو حالت پیش می آید:

1- روزی که در آن قرار داریم از 79 بیشتر است.

به این معنی است که در ماههای بعد از فروردین قرار داریم. حال باید مشخص کنیم که در 6 ماه اول سال شمسی قرار داریم یا در 6 ماه دوم سال قرار داریم، برای اینکار ابتدا 79 روز از تعداد روزها کم می­کنیم تا در اول فروردین قرار بگیریم حال اگر تعداد روزها از 186 (6X31=186) کمتر باشد یعنی در 6 ماه اول سال شمسی قرار داریم در غیر اینصورت در 6 ماه دوم قرار داریم.

اگر در 6 ماه اول سال قرار گرفته باشیم تعداد روزها را بر 31 تقسیم می­کنیم. 6 ماه اول در سال شمسی 31 روزه است. اگر باقیمانده این تقسیم صفر شد خارج قسمت تقسیم برابر با ماه شمسی می­شود و روز شمسی برابر با 31 می­شود. اگر باقیمانده صفر نشود ماه شمسی برابر با خارج قسمت باضافه یک می­شود و روز شمسی همان باقیمانده است.

اگر در 6 ماه دوم سال قرار گرفته باشیم،186 روز از تعداد روزها کم می­کنیم و آن را بر 30 تقسیم می­کنیم. اگر باقیمانده این تقسیم صفر شد خارج قسمت تقسیم باضافه 6 ، برابر با ماه شمسی می­شود و روز شمسی برابر با 30 می­شود. اگر باقیمانده صفر نشود ماه شمسی برابر با خارج قسمت باضافه 7 می­شود و روز شمسی همان باقیمانده است. سال شمسی از تفاضل سال میلادی با 621 بدست می­آید.

2- اگر روزی که در آن قرار داریم کمتر از79 است.

این بدان معنی است که در روزهایی بین اولین روز سال میلادی تا اولین روز شمسی (ماههای دی ،بهمن و اسفند) قرار داریم. اختلاف روز بین اولین روز سال میلادی و اولین روز دی ماه در سال شمسی را در نظر می گیریم که این اختلاف برای سال کبیسه 11 و برای غیر کبیسه 10 است.

* دقت کنید که در این الگوریتم برای مشخص کردن این اختلاف باید سال قبل از  سال داده شده را در نظر بگیریم زیرا سال قبل بر روی اولین روز سال میلادی تاثیر می­گذارد.

اختلاف روز را با تعداد روز محاسبه شده جمع می­کنیم، آن را بر30 تقسیم می­کنیم چون 3 ماه آخر سال شمسی 30 روزه است. اگر باقیمانده این تقسیم صفر شود خارج قسمت تقسیم  باضافه 9  برابر با ماه شمسی می­شود و روز شمسی برابر با 30 می­شود. اگر باقیمانده صفر نشود ماه شمسی برابر با خارج قسمت  باضافه10 می­شود و روز شمسی همان باقیمانده است.

در این حالت سال شمسی از تفاضل سال میلادی با 622  بدست می­آید، زیرا در سال قبل قرار داریم.

مطالعه بیشتر

راهنمای خرید:
  • در صورت خرید محصول دانلودی لینک دانلود فایل بلافاصله بعد از پرداخت وجه در حساب کاربری شما قرار خواهد گرفت.
  • در صورتی که به هر دلیلی موفق به دانلود فایل مورد نظر نشدید با استفاده از تیکت پشتیبانی به ما اطلاع دهید تا در اسرع وقت نسبت به بررسی و رفع ایرادات احتمالی اقدام کنیم.
  • در صورت خرید محصول فیزیکی بعد از پرداخت وجه تیم ما بلافاصله اقدام به بررسی و آماده سازی محصول نموده و به آدرس وارد شده در حساب کاربری شما ارسال خواهد شد.
  • برای پرداخت وجه میتوانید به سه روش اقدام کنید 
    1. کارت به کارت و ارسال کد رهگیری 
    2. پرداخت از طریق کیف پول 
    3. پرداخت از طریق درگاه پرداخت پی پینگ که با ۴ درگاه بانکی در ارتباط می باشد و یک پرداخت امن برای شما ایجاد می کند.
  • درگاههای پرداخت متصل به پی پینگ:
    1. شرکت سامان پرداخت
    2. شرکت تجارت الکترونیک سپهر
    3. شرکت پرداخت الکترونیک سداد
    4. شرکت پرداخت الکترونیک پاسارگاد

به علت نوسان قیمت دلار لطفا قبل از خرید استعلام قیمت کنید.

تلفن تماس 09355086858 علیرضا ملکی

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

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین کسی باشید که دیدگاهی می نویسد “ساعت دیجیتالی با نمایش روز و تاریخ شمسی و میلادی با احتساب سالهای کبیسه”

اطلاعات فروشنده

  • نام فروشگاه: سرزمین توسعه دیجیتال
  • فروشنده: سرزمین توسعه دیجیتال
  • آدرس: ارومیه شهرک اندیشه خیابان رازی کوچه 6 پلاک 101
    واحد ۱ و ۲
    ارومیه
    آذربایجان غربی
    5716713446
  • 5.00 امتیاز از 1 دیدگاه
۱,۱۵۹,۱۵۰ تومان
۶,۴۳۰,۷۷۴ تومان
۱۵,۸۵۵,۵۵۲ تومان
WhatsApp Me!
تماس با واتساپ
سبد خرید

هیچ محصولی در سبد خرید نیست.

ورود به سایت
ساعت دیجیتالی با نمایش روز و تاریخ شمسی و میلادی با احتساب سالهای کبیسه

۱۵,۰۰۰ تومان