پروژه اتمل استودیوپروژه الکترونیکپروژه تاریخ و ساعتپروژه های AVR

پروژه ساعت هشدار با میکروکنترلر AVR و اتمل استودیو

س پروژه ساعت هشدار دار اتمل استودیو (ساعت آلارم Atmel Studio) را آماده کردیم. فیلم عملکرد مدار رو از دست ندید !

پروژه ساعت هشدار اتمل استودیو
پروژه ساعت هشدار اتمل استودیو
در این پروژه میخواهیم یک ساعت زنگ دار با استفاده از تایمر Atmega 32 طراحی کنیم. میکروکنترلر Atmega32A دارای تایمر 16 بیتی است و از این تایمر برای شمارش ثانیه ها و ایجاد یک ساعت دیجیتال استفاده میکنیم.
همه ساعت های دیجیتال یک کریستال داخلی دارند که میشود گفت قلب ساعت هستند!. این کریستال نه تنها در ساعت ، بلکه در همه سیستم های زمان واقعی محاسبات ارائه میشود!. این کریستال موجب تولید پالس های ساعت میشود که برای محاسبات زمانی مورد نیاز است!. اگر چه برخی از روش های دیگر برای دریافت پالس های ساعت استفاده میشود، ولی برای دقت بیشتر و فرکانس بیشتر ، اکثرا ساعت ها بر پایه کریستال طراحی میشوند!. ما میخواهیم یک کریستال را به میکروکنترلر مگا 32 برای دریافت ساعت دقیق متصل کنیم !

تنظیم کلاک میکروکنترلر در اتمل استودیو

اول از همه ، کلاک در اینجا 11059200 هرتز است. تقسیم میکنیم به 1024 ، 10800 به دست می آید.بنابراین برای هر ثانیه 10800 ضربان لازم است. بنابراین میخواهیم استفاده کنیم از یک کانتر با 1024 پریکالار تا کانتر کلاک 10800 را بدست بیاوریم. و بعد میخواهیم از CTC در میکروکنترلر استفاده کنیم. یک رجیستر 16 بیتی وجود دارد  که ما میتوانیم یک مقدار را ذخیره کنیم. وقتی که شمارنده دارد مقدار را پیشروی میکند، یک وقفه برای ورودی ایجاد میشود.
میخوایم مقدار را 10800 تنظیم کنیم، بنابراین برای هر ثانیه یک ISR (سرویس سرویس وقفه در هر مقایسه) داریم . بنابراین ، ما میخوایم از این روال زمانبندی استفاده کنیم.
تایمر کانتر
تایمر کانتر
قهوه ای (WGM10-WGM13): ازاین بیت ها برای عملیات تایمر استفاده میکنیم.
موج
موج

brownNow از آنجایی که میخواهیم حالت CTC با مقدار مقایسه ای در بایت OCR1A انجام بدیم، فقط باید WGM12 را به یک تنظیم کنیم، بقیه به صورت پیشفرض صفر هستند.

قرمز (CS10، CS11، CS12): این سه بیت برای انتخاب پریکالار هستند و بنابراین کانتر کلاک مناسب را انتخاب می کنند.

انتخاب بیت
انتخاب بیت
باتوجه به جدول بالا و از اونجایی که ما مقدارمان را به 1024 تقسیم کردیم، باید CS12 و CS10 را تنظیم کنیم.

حالا باید یک رجیستر دیگر را نظر داشته باشیم :

مطلب پیشنهادی :
آموزش پروژه تشخیص حرکت LDR با آپ امپ LM741 با هشدار (چشم الکترونیکی)
تایمر کانتر اینتراپت
تایمر کانتر اینتراپت
سبز (OCIE1A) : این بیت باید تنظیم کند برای اینتراپت و مقایسه کنه اطلاعات کانتر و OCR1A (10800) را.
output
output

مقدار OCR1A (مقایسۀ مقایسه مقادیر) در رجیستر بالا نوشته شده است.

شماتیک مدار پروژه ساعت زنگ دار AVR

برای داشتن زمان دقیق، یک کریستال 11.0592 مگاهرتزی را به میکروکنترلر متصل می کنیم. حالا برای غیرفعال کردن ساعت داخلی میکروکنترلرباید BITS FUSE BOND خودمان را تغییر می دهیم. پس یادتان باشد که بیت های دیگر را دست نزنید و ارتباط JTAG همچنان فعال هست.

شماتیک پروژه ساعت با آردوینو

برای غیر فعال کردن ساعت داخلی مگا 32 ، و برای کار در خروجی مان، باید تنظیم کنیم :
استفاده کمتر بایت : 0xFF یا 0b11111111
در مدار ، پورت B میکروکنترلر به ال سی دی متصل است. یادآوری میکنیم که اگر کسی از پورت C برای اتصال JTAG در بایت فیوز های بالا استفاده کند، اتصال JTAG قطع میشود. در ال سی دی 16 پین وجود دارد . اگر بلک لایت راحذف کنیم 14 پین میماند.  میتوانیم پین های بلک لایت و نور پشت را به برق وصل کنیم یا رها کنیم. در حال حاضر  16 پین داریم که 8 پین داده هایمان هست. 2 پین منبع تغذیه ، 3 پین برای کنترل کنتراست ، 3 پین برای کنترل هست.
در مدار ، شما میتوانید ببینید که فقط دو تا پین را گرفتیم ، این به انعطاف پذیری یه درک بهتری بهتر میدهد . بیت کنتراست و READ / WRITE اغلب استفاده نمیشوند ! بنابراین میتوانیم انها را به زمین GND وصل کنیم . این باعث میشود که ال سی دی در بالاترین کنتراست و حالت خواندن قرار بگیرد.  فقط نیاز به کنترلِ پنل های Enable و RS برای ارسال کاراکتر ها و داده ها داریم.

قطعات مورد نیاز پروژه ساعت آلارم دار  AVR

  • میکروکنترلر Atmega 32 (دیتاشیت مگا 32)
  • کریستال 11.0592 مگاهرتز
  • خازن 22 پیکوفاراد (2 عدد)
  • منبع تغذیه 5 ولت
  • خازن 100میکروفاراد
  • ال سی دی کاراکتری 16*2
  • دکمه (4 عدد)
  • مقاومت 10 کیلو اهم (6 عدد)
  • خازن 100 نانو فاراد (4 عدد)
  • پین سوئیچ (2 عدد)
  • ترانزیستور 2N2222
  • مقاومت 200 اهم
  • بازر (Buzzer)
  • کامپایلر Atmel Studio (دانلود اتمل استودیو)
موارد موجود در فایل : شماتیک کامل ، فایل سورس ، و …

نظرتان را در مورد این مطلب با ستاره دادن اعلام کنید
امیدوارم این مطلب برای شما مفید بوده باشد. نظرات ، مشکلات و پیشنهادات خود را در پایین صفحه اعلام کنید
محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. مالکیتی بر مطالب ارائه شده ندارم. اکثر فعالیت بنده در زمینه ترجمه است. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید)

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *