ساعت +تقویم شمسی+دماسنج با ایسیDs1307وatmega8
ارسال شده: دوشنبه ۱۰ اسفند ۱۳۹۴, ۱۱:۲۱ ق.ظ
بنام خداوند بخشنده مهربان
باسلام
ساعت +تقویم شمسی+دماسنج با ایسیDs1307وatmega8
در این پروژه جالب که اینجاب انجام داده ام. یک ساعت به کمک ایسی DS1307 و میکروکنترولر Atmega8 و دماسنج با دقت DS18b20 و حافظه EEprom خارجی (24c32) ساخته شده است، که همه این قطعات (به غیر از میکروکنترولر) بر روی یک ماژول ساعت تهویه شده.([External Link Removed for Guests]جستجو را ببینید)* لازم به ذکر است ایسی دماسنج DS18b20 بر روی این ماژول تهویه نشده واما جایگاه ان وجود دارد،که باید جداگانه تهیه کنید.
اما می توانید همه ایسی و قطعات را به صورت جداگانه تهیه و استفاده کنید . (که البته قیمت تمام شده برای شما کمتر خواهد شد..)
اما اشنایی مختصر با قابلیت های ایسی DS1307:
تاریخ (میلادی )و ساعت سنج دقیق
قابلیت تشخیص روز،هفته،ماه،سال
قابلیت شمارش تا 100 سال.
قابلیت تشخیص سال های کبیسه
64 بایت حافظه رم (از نوع nv-flash)-که از این میزان حافظه 8 بایت مورد استفاده خود ایسی و باقی ازاد می باشد!(که در این پروژه برای نگه داری دما از ان استفاده کردیم)
نگه داری اطلاعات خود با یک باتری سکه ی تا 10 سال!(یعنی اگر مقدار تاریخ و زمان را به ان بدهیم،بدون برق می تواند تاریخ را تا 10 سال بشمارد و در حافظه خود نگه دارد)
نوع رابط برقراری ارتباط I2C می باشد.
آشنایی مختصر با ایسی DS18b20
قابلیت اندازه گیری دما (با دقت قابل تنظیم 12 تا 9 بیت)
دما -10 تا +85 درجه(درصد خطا اندازه گیری 0.5 سانتی گراد)
خروجی دیجیتال،فقط با یک سیم (برای ارتباط با این ایسی فقط نیاز به یک سیم نیاز می باشد)
آشنایی مختصر با ایسی حافظه EEprom At24c32
حافظه 32.768 بیتی که جمعا 4096 بایت می باشد (4 کیلو بایت)
1 میلیون بار قابلیت نوشتن و پاک کردن
نگه داری اطلاعات تا 100 سال
ولتاژ کاری در فرکانس 100 کیلو هرتز (1.8 و 2.5 و 2.7 ولت) و در فرکانس 400 کیلوهرتز(5 ولت)
رابط برقراری ارتباط I2C
اما قابلیت ها مهم پروژه نوشته شده:
1-نمایش تاریخ شمسی
2-تشخیص سال کبیسه(ایران)
3-افزایش 1 ساعت در اول فروردین و کاهش 1 ساعت در ماه مهر
4-نمایش دما(با دهم درصد)
5-ذخیر دما،بصورت 1 ساعتی یک بار (24 بار،در طول یک روز، و ذخیر در حافظه رم ds1307)
6-ذخیر دما،به صورت 1 روزی یک بار در ساعت 12 (ذخیر 30 روز پشت سر هم،و ذخیر در حافظه EEprom)
7-دکمه برای نمایش دما ،در 24 ساعت و 30 روز گذشته
8-هر 1 ساعت یک بار، دمایی 24 ساعت گذشته به صورت افکت (حرکت متن به سمت چپ) نمایش داده میشود
9-قابلیت تنظیم تاریخ ،زمان




*لازم به ذکر دو تابع تبدیل تاریخ شمسی و ذخیر در حافظ eeprom رو به کمک کتاب میکروکنترولرهای avr تالبف جابر الوندی تهیه کردم .
در این پروژه مقدار دما هر 1 ساعتی یک بار در حافظه رم ساعت ، و مقدار دما در روز در حافظه ای ای پی رام خارجی ذخیره میشود.
توصیه می کنم بعد از مقداری دهی و تنظیم ساعت و تاریخ،دستگاه رو خاموش نکنید،وگرنه مقداری در تنظیم و ذخیر دما بهم ریختگی ایجاد میشود.پروژه در حال ازمایش می باشد،لطفا نقاط ضعف رو بفرمایید
نکته دیگه،باید تاریخ رو به میلادی واردی کنید(بعد خود نرم افزار به شمسی اون رو تبدیل می کنه)
بیشتر توضیحات مربوط به برنامه،در خط برنامه داده شده ... و در اینجا فقط تابع تاریخ رو به صورت جداگانه قرار میدم.
تابع تبدیل تاریخ شمسی:
Please Login or Register to see this code
این یک آرایه دو بعدی که تابع تبدیل به اون مراجعه می کنه
Please Login or Register to see this code
اما کل کدهایی برنامه :
Please Login or Register to see this code
[External Link Removed for Guests]شبیه ساز و کدها.
باتشکر.
باسلام
ساعت +تقویم شمسی+دماسنج با ایسیDs1307وatmega8

اما می توانید همه ایسی و قطعات را به صورت جداگانه تهیه و استفاده کنید . (که البته قیمت تمام شده برای شما کمتر خواهد شد..)
اما اشنایی مختصر با قابلیت های ایسی DS1307:
تاریخ (میلادی )و ساعت سنج دقیق
قابلیت تشخیص روز،هفته،ماه،سال
قابلیت شمارش تا 100 سال.
قابلیت تشخیص سال های کبیسه
64 بایت حافظه رم (از نوع nv-flash)-که از این میزان حافظه 8 بایت مورد استفاده خود ایسی و باقی ازاد می باشد!(که در این پروژه برای نگه داری دما از ان استفاده کردیم)
نگه داری اطلاعات خود با یک باتری سکه ی تا 10 سال!(یعنی اگر مقدار تاریخ و زمان را به ان بدهیم،بدون برق می تواند تاریخ را تا 10 سال بشمارد و در حافظه خود نگه دارد)
نوع رابط برقراری ارتباط I2C می باشد.
آشنایی مختصر با ایسی DS18b20
قابلیت اندازه گیری دما (با دقت قابل تنظیم 12 تا 9 بیت)
دما -10 تا +85 درجه(درصد خطا اندازه گیری 0.5 سانتی گراد)
خروجی دیجیتال،فقط با یک سیم (برای ارتباط با این ایسی فقط نیاز به یک سیم نیاز می باشد)
آشنایی مختصر با ایسی حافظه EEprom At24c32
حافظه 32.768 بیتی که جمعا 4096 بایت می باشد (4 کیلو بایت)
1 میلیون بار قابلیت نوشتن و پاک کردن
نگه داری اطلاعات تا 100 سال
ولتاژ کاری در فرکانس 100 کیلو هرتز (1.8 و 2.5 و 2.7 ولت) و در فرکانس 400 کیلوهرتز(5 ولت)
رابط برقراری ارتباط I2C
اما قابلیت ها مهم پروژه نوشته شده:

2-تشخیص سال کبیسه(ایران)
3-افزایش 1 ساعت در اول فروردین و کاهش 1 ساعت در ماه مهر
4-نمایش دما(با دهم درصد)
5-ذخیر دما،بصورت 1 ساعتی یک بار (24 بار،در طول یک روز، و ذخیر در حافظه رم ds1307)
6-ذخیر دما،به صورت 1 روزی یک بار در ساعت 12 (ذخیر 30 روز پشت سر هم،و ذخیر در حافظه EEprom)
7-دکمه برای نمایش دما ،در 24 ساعت و 30 روز گذشته
8-هر 1 ساعت یک بار، دمایی 24 ساعت گذشته به صورت افکت (حرکت متن به سمت چپ) نمایش داده میشود
9-قابلیت تنظیم تاریخ ،زمان

کاهش 1 ساعته،در مهر ماه

افزایش 1 ساعت،در فروردین

افکت نمایش دما بصورت اتوماتیک،هر 1 ساعتی یک بار

تنظیم تاریخ و زمان
اما برنامه نویسی:*لازم به ذکر دو تابع تبدیل تاریخ شمسی و ذخیر در حافظ eeprom رو به کمک کتاب میکروکنترولرهای avr تالبف جابر الوندی تهیه کردم .
در این پروژه مقدار دما هر 1 ساعتی یک بار در حافظه رم ساعت ، و مقدار دما در روز در حافظه ای ای پی رام خارجی ذخیره میشود.
توصیه می کنم بعد از مقداری دهی و تنظیم ساعت و تاریخ،دستگاه رو خاموش نکنید،وگرنه مقداری در تنظیم و ذخیر دما بهم ریختگی ایجاد میشود.پروژه در حال ازمایش می باشد،لطفا نقاط ضعف رو بفرمایید
نکته دیگه،باید تاریخ رو به میلادی واردی کنید(بعد خود نرم افزار به شمسی اون رو تبدیل می کنه)
بیشتر توضیحات مربوط به برنامه،در خط برنامه داده شده ... و در اینجا فقط تابع تاریخ رو به صورت جداگانه قرار میدم.
تابع تبدیل تاریخ شمسی:
Please Login or Register to see this code
این یک آرایه دو بعدی که تابع تبدیل به اون مراجعه می کنه
Please Login or Register to see this code
اما کل کدهایی برنامه :
Please Login or Register to see this code
[External Link Removed for Guests]شبیه ساز و کدها.
باتشکر.