با خرید این محصول سورس کامل پروژه شامل برنامه میکروکنترلر با بسکام، نقشه شماتیک با پروتئوس و 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 بدست میآید، زیرا در سال قبل قرار داریم.
- در صورت خرید محصول دانلودی لینک دانلود فایل بلافاصله بعد از پرداخت وجه در حساب کاربری شما قرار خواهد گرفت.
- در صورتی که به هر دلیلی موفق به دانلود فایل مورد نظر نشدید با استفاده از تیکت پشتیبانی به ما اطلاع دهید تا در اسرع وقت نسبت به بررسی و رفع ایرادات احتمالی اقدام کنیم.
- در صورت خرید محصول فیزیکی بعد از پرداخت وجه تیم ما بلافاصله اقدام به بررسی و آماده سازی محصول نموده و به آدرس وارد شده در حساب کاربری شما ارسال خواهد شد.
- برای پرداخت وجه میتوانید به سه روش اقدام کنید
- کارت به کارت و ارسال کد رهگیری
- پرداخت از طریق کیف پول
- پرداخت از طریق درگاه پرداخت پی پینگ که با ۴ درگاه بانکی در ارتباط می باشد و یک پرداخت امن برای شما ایجاد می کند.
- درگاههای پرداخت متصل به پی پینگ:
- شرکت سامان پرداخت
- شرکت تجارت الکترونیک سپهر
- شرکت پرداخت الکترونیک سداد
- شرکت پرداخت الکترونیک پاسارگاد
نقد و بررسیها
هیچ دیدگاهی برای این محصول نوشته نشده است.