ساخت ساعت و تقویم با AVR
طراحی و ساخت ساعت و تقویم برای آن دسته از کسانیکه تازه پا به عرصه الکترونیک و برنامه نویسی برای میکروکنترلر های AVR گذاشته اند، بسیار جالب و جذاب می باشد، به همین خاطر در این پروژه سعی داریم تا یک پروژه آموزشی از نحوه ساخت یک ساعت با امکان نمایش تقویم بر روی یک LCD کاراکتری 2*16 به زبان برنامه نویسی C در محیط نرم افزار Code-Vision-AVR برای تمامی علاقه مندان به پروژه های میکروکنترلر AVR منتشر کنیم.
نقشه جاگذاری قطعات بر روی برد PCB
لیست قطعات مورد نیاز
مقاومت 1 کیلو اهم با توان 0.25 وات و تلرانس 5 درصد | 2 عدد |
مقاومت 10 کیلو اهم با توان 0.25 وات و تلرانس 1 درصد | 5 عدد |
مقاومت 220 اهم با توان 0.25 وات و تلرانس 1 درصد | 1 عدد |
دیود 1N4007 | 3 عدد |
رگولاتور ولتاژ 5 ولت L7805 | 1 عدد |
ترانزیستور 2N3904 نوع NPN | 1 عدد |
پتانسیومتر خوابیده 10K کیلو اهم تکدور مدل DIP | 1 عدد |
خازن الکترولیتی 470uf میکروفاراد 16 ولت | 2 عدد |
کریستال ساعت 32.768KHz کیلوهرتز | 1 عدد |
میکروکنترلر ATMEGA8A-PU مدل DIP تایوانی با 28 پایه | 1 عدد |
سوکت آی سی 28 پایه باریک مدل معمولی | 1 عدد |
ترمینال پیچی 2 پین مدل KF300 رنگ آبی | 1 عدد |
ترمینال پیچی 3 پین مدل KF300 رنگ آبی | 1 عدد |
رله 12V ولت معمولی تک کنتاکت با جریان 10 آمپر | 1 عدد |
بازر 5 ولتی با اسیلاتور داخلی | 1 عدد |
لامپ LED قرمز سایز 3mm میلی متر مدل مات | 1 عدد |
تک سوئیچ 4 پایه DIP سایز 6x6x5 میلیمتر | 4 عدد |
LCD کاراکتری مدل 16×2 با Backlighting آبی | 1 عدد |
پین هدر نری صاف 1x40 با ارتفاع 11 میلیمتر - مشکی | 1 عدد |
پین هدر مادگی صاف 1x40 با فاصله پایه 2.54 میلیمتر - مشکی | 1 عدد |
آداپتور 12V ولت 2A آمپر مدل بین راهی ساخت ایران | 1 عدد |
لیست ابزار آلات و تجهیزات مورد نیاز
هویه | 1 عدد |
سیم لحیم | 1 عدد |
کف چین | 1 عدد |
قلع کش | 1 عدد |
شرح عملکرد پروژه
در طراحی این پروژه از 5 کلید فشاری (میکروسوئیچ) جهت ورود به منوی تنظیمات و ویرایش ساعت و تقویم استفاده شده است که البته با تعداد کیلیدهای کمتر نیز میتوانستیم این پروژه را انجام دهیم اما برای شکیل تر شدن محیط منو و راحتی کار کردن در محیط منو از پنج میکرو سوئیچ استفاده کردیم.میکرو کنترلر استفاده شده در این پروژه، میکروکنترلر ATMEGA8 از خانواده AVR بوده که مناسب برای چنین پروژه هایی میباشد و برای بدست آوردن زمان دقیق یک ثانیه از کریستال ساعت (32.768KHZ) استفاده کرده ایم. همچنین بر روی این کیت یک بیزر برای اعلام هشدار و یک رله که میتوان آن را کنترل کرد ، وجود دارد.
در حالت نمایش ساعت و تقویم روی LCD شما با فشردن کیلید چپ یا راست میتوانید روزهای هفته را تغییر دهید و با فشردن کیلید وسط (منو) وارد منوی تنظیمات شوید.در منوی تنظیمات شما میتوانید ساعت و تقویم را ویرایش نمائید و یا ساعت هشدار را تنظیم کنید.همچنین میتوانید از منوی تنظیم رله ، با تنظیم (ساعت شروع) و (ساعت پایان) قطع و وصل شدن رله را کنترل نمایید که به وسیله آن میتوان یک وسیله برقی را کنترل نمایید که در یک ساعت معین روشن یا خاموش شود.
در این پروژه برای نمایش اطلاعات از ال سی دی کاراکتری 2*16 که یک نمایشگر پرکاربرد میباشد و برای شروع کار کردن با نمایشگرها یک گزینه بسیار مناسب میباشد استفاده شده که این نوع از LCD ها قابلیت تعریف فونت ندارند و فقط میتوان برای آنها تعداد هفت عدد کاراکتر دلخواه تعریف کرد.
ویدیو ضبط شده از نحوه عملکرد پروژه
در پایان امیدواریم که با ارائه این پروژه ساده ، در یک بعد زمینه آشنایی علاقه مندان به الکترونیک با یکسری از قطعات پر کاربرد اعم از ال سی دی کاراکتری ، میکروکنترلر AVR ، رله و رگولاتور ولتاژ 7805 که به نحوی یک قطعه ثابت در اکثر پروژه ها بوده و برای بدست آوردن ولتاژ پنج ولت در مدار استفاده شده را فراهم آورده باشیم و در بعدی دیگر باعث آشنایی شما عزیزان علاقه مند به برنامه نویسی میکرو کنترلرها که تازه شروع به این کار نموده اید ، شده باشیم.
سلام دوست عزیز
ترمینال سه پایه موجود بر روی برد، پایه های COM, NO, NC رله را در اختیار کاربر می گذارد تا توسط آن بتوانید یک وسیله برقی را در زمان مشخص کنترل (خاموش، روشن) کنید.
سلام و درود و خسته نباشید بر تمامی کادر سایت بی نظیر elec98
بزرگوار مقدار جریان ورودی چقدر است ؟
پیشاپیش ممنون از پاسخ شما
سلام دوست عزیز
حداکثر جریان مصرفی این مدار 200 میلی آمپر می باشد.
سلام و درود مجدد
عزیزان خسته نباشین
استاد فایل codevision رو هنگامی که باز میکنم هیچ متن برنامه نویسی شده ای وجود ندارد
و صفحه سفید است و (مشکل از کرک برنامه نیست ،چون پروژه های دیگر باز میشوند)
و 2 عدد فایل ta وجود دارد که هر دو اینگونه هستند
ولی فایل Exe ان سالم است.
خواهشا اگر امکانش هست راهنمایی کنید
سپاس فراوان
سلام دوست عزیز
فایل برنامه بررسی شد و بدون هیچ مشکلی توسط کامپایلر CodeVision اجرا گردید. همچنین شما می توانید فایل ta.c را با برنامه Notepad ویندوز باز کنید و به کدها دسترسی داشته باشید.
سلام خسته نباشید مرسی بابت پروژه خوبتون ببخشید یه سوال داشتم این برنامه طوریه که اگر یک بار آلارم یا رله فعال شه اگر شروع به کار کنه و دوباره خاموش شه تنظیممون آف میشه و باسد دوباره فعالش کنیم نمیشه یه تغییری در برنامه بدیم که هر روز در تایم تعیین شده شروع به کار کنه (آلارم با رله رو منظورمه) چون این شکلی زیاد کاربردی نداره اگه میشه یه راهنمایی بکنید که چطوری این امکان رو برای پروژه بزارم که هر روز سر تایم تعیین شده فعال بشه مچکرم استاد
سلام دوست عزیز
برای این منظور می توانید در خط 633 برنامه دستور
را از برنامه حذف کنید.
سلام مهندس من این پروژرا انجام دادم و خیلی عالی بود و تنها یه مشکل داشت و اونم ثانیه ساعت هست که دقیق کار نمیکنه و خیلی کند هست باید چیکارش کنم؟؟؟؟؟ممنون میشم جواب بدین
سلام دوست عزیز
دو احتمال زیر را بررسی کنید:
1- مطمئن شوید فیوزبیت های میکروکنترلر را به درستی پروگرام کرده اید (در دیدگاه های قبلی در پاسخ به سایر کاربران وضعیت فیوزبیت ها آورده شده است)
2- از اتصال و صحت عملکرد کریستال ساعت مطمئن شوید.
سلام مهندس جان مشکل از کریستال بود ولی با هر بار خاموش شدن دوباره به همان حالت برمیگرد و یه حالتی دار که بادست زدن به کریستال راه میفته
سلام دوست عزیز
پیشنهاد میکنیم فیوزبیت های میکروکنترلر را بررسی نمایید تا مطمئن شوید به درستی پروگرام شده اند
سلام وقت بخیر
داخل پی سی بی پروتئوس زده که پایه 20 اتمگا به 7 باید وصل شه ولی نشده داخل پی دی اف خروجی هم وصل نشده باید وصل شه یا نه ؟
سلام دوست عزیز
در این پروژه نیازی به اتصال پایه 20 میکروکنترلر نیست.
سلام وقت بخیر
من این مدار رو بستم ایسی سالمه و برنامه هم داخلش ریختم
ال سی دی روشن میشه ولی چیزی نشون نمیده مشکل چیه؟
سلام دوست عزیز
تمامی اتصالات نمایشگر تا میکروکنترلر را با یک مولتی متر به دقت بررسی کنید، همچنین مطمئن شوید پتانسیومتری که در کنار نمایشگر قرار دارد به درستی نصب شده باشد و با تغییر وضعیت آن آزمایش کنید که آیا نوشته ها بر روی نمایشگر ظاهر می شوند یا خیر.