Home / میکروکنترلر / آموزش میکروکنترلر AVR / آموزش میکروکنترلر AVR قسمت دهم (راه اندازی کلید با AVR)

آموزش میکروکنترلر AVR قسمت دهم (راه اندازی کلید با AVR)

راه اندازی کلید با AVR:

در این برنامه قصد داریم یا یک کلید و یک led مداری با میکرو طراحی کنیم که بازده شدن کلید led  روشن و وقتی کلید رها شود led خاموش شود. برنامه به صورت سطر به سطر توضیح داده می شود.

  1. توسط یکی از پایه ها باید از زده شدن کلید با خبر شویم .
  2. باید دائم پایه چک شود.
  3. اگر کلید زده شد یکی از پایه ها یک شود.

key whith AVR

برنامه برای کامپایلر codevision:

توضیح سطر به سطر برنامه:

  1. تعریف کتابخانه مربوط به میکروکنترلر ATmega32
  2. تعریف تابع اصلی mian که در همه ی برنامه های زبان C ثابت است.
  3. ورودی کردن پین صفر از پورت A به منظور وصل کردن کلید
  4. خروجی کردن پین صفر از پورت B به منظور وصل کردن led
  5. حلقه ی (1) while که دستورات داخل این حلقه به صورت دائمی اجرا می شود . یا در اصطلاح حلقه  ی بی نهایت
  6. دستور if برای چک کردن کلید اگر (کلید زده شده باشد شرط if درست بوده و دستور داخل if اجرا می شود)
  7. دستور داخل  if  که پین 0 از پورت A را یک می کند که موجب روشن شدن led میشود.

9.  در صورت درست نبودن شرط if دستور سطر 9 اجرا شده و پین صفر از پورت A  را صفر میکند و led خاموش می ماند.

در پایین همین برنامه برای کامپایلر IAR هم قرار داده می شود.

برای کامپایلر IAR:

 طراحی یک شمارنده با میکروکنترلر AVR:

هدف از این مدار و برنامه طراحی یک شمارنده است. که با زده با هر بار زده شدن کلید 1 واحد به مقدار شمارش شده اضافه می شود.

نکاتی در مورد برنامه:

  • متغییر k برای کنترل کلید به کار رفته است در صورتی که کلید فشار داده شود 1 واحد به مقدار شمارش شده اضافه می شود . اگر کلید را رها نکینم اتفاق خاصی نمی افتد و شمارنده یه صورت خودکار افزوده نمی شود برای عمل کردن دوباره ی کلید حتما باید کلید رها شده و دوباره فشرده شود.
  • متغیر i برای نگه داری مقدار شمارش شده می باشد. که باید وقتی شمارنده به عدد 255 رسید دوباره به مقدار صفر برگردانده شود که این کار توسط دستور if انجام می شود.
  • عدد شمارش شده به صورت باینری (دودویی) و توسط led  روی 8 پین از پورت  نمایش داده می شود.

برنامه شمارنده برای کدویژن:

برنامه برای کامپایلر IAR:

 لینک دانلود برنامه ها :

در پایین برنامه به صورت پروزه های کامپایل شده + شماتیک برای راه اندازی مدار قرار داده می شود.

دانلود

About علی عزتی

علی عزتی هستم. رشته ی مهندسی برق الکترونیک رو خوندم. علاقه ی من به یادگیری و به اشتراک گذاشتن چیز هایی که یاد گرفتم. باعث شد تا الکترولب ایجاد بشه. علاقه ی زیادی به الکترونیک دارم. و دوست دارم چیزهای جدید یادبگیرم و بسازم ... :))

Check Also

راه اندازی ماژول SIM800L با آردوینو

ارتباط از راه دور، يكي از قابليت هاي کلیدی و کاربردی براي طراحان الكترونيك به ...

One comment

  1. واقعا سایت دستتون درد نکنه ..مخصوصا با نرم افزار IAR هم کد نوشتین.. 🙂

پاسخ دهید

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