سخت افزار قطعات الکترونیک مدارهای الکترونیک میکروکنترلر AVR نمایشگر LCD

پروژه ساعت فوق دقیق با LCD و ماژول DS3231 توسط میکروکنترلر AVR

نوشته شده توسط علی زاهدی

حدود ۶ قرن قبل از میلاد، بابلی‌ها چند نمونه ابداعی از خود بجا گذاشته‌اند. این موارد امروزه در کلیه کشورها مورد استفاده قرار می‌گیرند. مرسوم داشتن هفت روز هفته و تعیین عدد ۶۰ برای تقسیم بندی ساعت یادگار بابلی‌ها است. بابلی‌ها عقیده داشتند که عدد ۶۰ به اعداد ۳۰،۲۰،۱۵،۱۰،۶،۵،۳،۲،۱ بخش پذیر است. این عدد را پایه و مبنای تقسیم بندی ساعت در نطر گرفته اند. در این پروژه روش ساخت ساعت دیجیتالی با استفاده از میکروکنترلر AVR آموزش خواهم داد. ماژول ساعت DS3231 یک تراشه فوق دقیق جهت شمارش زمان می‌باشد. در ادامه این آموزش با مرجع تخصصی میکروکنترلر AVR به زبان فارسی، دیجی اسپارک همراه باشید.

 


ماژول ساعت فوق دقیق DS3231


تراشه DS2331 آی سی تکمیل شده و پیشرفته‌تر DS1307 می‌باشد. این تراشه علاوه بر امکانات DS1307 از دقت بالاتر، با قابلیت تنظیم آلارم می‌باشد. ولتاژ کاری ماژول ۳٫۳ الی ۵٫۵ ولت بوده و از باتری بک آپ و جریان مصرفی بسیار پایین استفاده می‌کند. در واقع این ماژول ساعت زمان واقعی یا همان RTC مخفف شده real time clock می‌باشد. ساعت DS3231 از پروتکل سریال I2C پشتیبانی می‌کند. کارکرد این ماژول براساس کدهای binary coded decimal که اصطلاحا کد BCD نامیده می‌شود، است. باتری بک آپ قرار گرفته بر روی این ماژول زمانی که جریان برق در دسترس نیست باعث جلوگیری از عقب افتادن زمان خواهد شد. منبع کلاک این آی سی از یک کریستال ساعت به فرکانس ۳۲٫۷۶۸KHZ استفاده می‌کند. این آی سی قابل کارکرد در دو حالت ۲۴ ساعته و ۱۲ساعته AM/PM را دارد. همچنین علاوه بر ساعت بصورت ثانیه، دقیقه، ساعت امکان ذخیره تاریخ بصورت روز، هفته، ماه، سال را نیز دارد. در ضمن اطلاعات نوشته شده بر روی این آی سی تا سال ۲۱۰۰ برنامه ریزی شده است. از دیگر امکانات این ماژول می‌توان به اندازه‌گیری دما اشاره نمود.

 


ویژگی‌های ماژول DS3231


  • قابلیت تصحیح سال کبیسه
  • چیپ حافظه AT24C32 با ظرفیت ۳۲ کیلوبایت
  • ارتباط از طریق پروتکل I2C
  • ماکزیمم سرعت انتقال ۴۰۰KHz
  • دقت دماسنج ۳+/- درجه سانتی‌گراد

 


اتصالات ماژول ساعت DS3231


پایه VCC ماژول به قطب مثبت ۵ ولت

پایه GND ماژول به قطب منفی

پایه SCL به پایه ۲۸ میکروکنترلر

پایه SDA به پایه ۲۷ میکروکنترلر

کلید های فشاری را به پایه های ۱۵ و ۱۶ میکروکنترلر و قطب منفی متصل کنید.

اتصالات پروژه ساعت فوق دقیق با ساعت DS3231 و نمایشگر LCD و تراشه Atmega8 - دیجی اسپارک

 


کدنویسی ساعت DS3231 


جهت اجرای کدها باید در نرم افزار کدویژن، کدها را آماده کرده و سپس پروگرام کنید. چنانچه این روش را نمی‌دانید به آموزش نحوه ی ساخت پروژه جدید و پروگرام کردن میکروکنترلر مراجعه کنید. پس از ساخت پروژه‌ی جدید در نرم افزار کدویژن CodeVision کدهای زیر را داخل آن کپی کنید. سپس تراشه میکروکنترلر Atmega8 را پروگرام کنید.

 

 

 

 


تحلیل کد پروژه ساعت DS3231


در ابتدای کدها کتابخانه‌های مورد نیاز را به پروژه اضافه کرده‌ایم. سپس چند متغیر برای دریافت ساعت از ماژول و نمایش آن بر روی سگمنت تعریف کرده‌ایم. داخل تابع main ابتدا تظیماتی از جمله فعال سازی بخش I2C و تایمر و معرفی پایه‌ها بعنوان ورودی و خروجی قرار دارد. سپس برنامه وارد حلقه‌ی بی نهایت شده و ابتدا ساعت را دریافت و سپس نمایش می‌دهد. در آخر دو کلید برای تنظیم ساعت و دقیقه به صورت Pull up تعریف شده است. توجه داشته باشید هنگام پروگرام کردن میکروکنترلر فیوز بیت‌ها بر روی ۸ مگاهرتز تنظیم شده باشد.

 


سخت افزار مورد نیاز


 

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

 


پروژه و دریافت بن ارسال رایگان


برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ‌های دیجی_اسپارک   دانشجوکیت    digispark    daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

 

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

علی زاهدی

دانشجو ی رشته الکترونیک،
عاشق یادگیری و به اشتراک گذاشتن اطلاعاتم هستم.

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

۲ دیدگاه