وبلاگ

میکروکنترلرAVR

AVR

میکروکنترلر AVR چیست؟

میکروکنترلر AVR  نوعی میکروکنترلر تولید شده توسط شرکت  اتمل است. این میکروکنترلر که هشت بیتی می باشد به دلیل قابلیت برنامه‌نویسی توسط کامپایلر زبان‌های برنامه‌نویسی سطح بالا، مورد توجه قرار گرفته اند.معماری استفاده شده برای این میکروکنترلر معماری ریسک می باشد این نوع ریزکنترل‌گرها دارا ۳۲ ثبات همه منظوره هستند که یکی از ویژگی های آنها به شمار می رود. در این میکرو کنترلر از حافظه فلش و EEPROM استفاده شده است.

شاید براتون سوال شده که میکروکنترلر چیست؟

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

تفاوت میکروکنترلر AVR و مادربرد کامپیوتر

شما می توانید یک میکروکنترلر را با مادربرد کامپیوتر مقایسه کنید. اگر دقت کرده باشید در مادربرد کامپیوتر یک ریزپردازنده به نام اینتل وجود دارد که از طریق این تراشه می‌توان به حافظه RAM و EEPROM و تمام رابط ای دیگر با سیستم دسترسی پیدا کرد. و حال یک میکروکنترلر تمام این ویژگی‌ها را همچون CPU، پورت‌های ورودی و خروجی و حافظه RAM یا ROM را در یک تراشه داخلی دارد، بنابراین مادربرد نیاز ندارند و به این دلیل  اجزایی مانند LEDها، می‌توانند مستقیماً به میکروکنترلر AVR متصل شوند.

حالا چطوری می توان به این میکروکنترلر دسترسی پیدا  کرد و برنامه ریزی را انجام داد؟

کامپایلر محیط است که می توان با استفاده از آن روی این میکرو کنترلر ها برنامه نوشت و حالا  کامپایلرهایی به زبان بیسیک و c که زبان های پرکاربردی هستند برای این ریزکنترل گرها استفاده شده است البته کامپایلرهای دیگری نیز وجود دارند مثل کامپایلر بسکام  و نرم افزاری که  می توانید با کمک زبان C برنامه نویسی برای این میکرو کنترلر انجام بدید CodeVision می باشد.

کاربرد میکرو‌کنترلر AVR 

میکروکنترلرهای AVR بسته‌های مختلفی دارند که برخی برای نصب از طریق سوراخ و برخی نیز برای نصب روی سطح طراحی شده اند. AVRها با 8 پین تا 100 پین در دسترس هستند، اگرچه AVR از 64 پین بیشتر باشد فقط برای نصب روی سطح مناسب هستند. ریزپردازنده‌های رایانه‌های شخصی حداقل 32 بیتی هستند، البته امروزه رایانه‌ها اکثرا 64 بیتی ساخته می‌شوند.

این بدان معناست که آن‌ها می‌توانند داده‌ها را به صورت قطعه‌های 32 بیتی یا 64 بیتی پردازش کنند. AVR بسیار ساده‌تر است و با داده‌های 8 بیتی سروکار دارد، زیرا پهنای گذرگاه آن 8 بیتی است، اگرچه اکنون یک AVR32 با پهنای گذرگاه 32 بیتی و یک خانواده ATxmega با پهنای گذرگاه داده 16 بیتی وجود دارد.

یک رایانه شخصی دارای سیستم عامل (ویندوز یا لینوکس) است که برنامه‌های زیادی مانند Word یا Internet Explorer یا Chrome را اجرا می‌کند و کارهای زیادی را انجام می‌دهند. یک میکروکنترلر 8 بیتی AVR معمولاً سیستم عاملی ندارد، اگرچه در صورت نیاز می‌تواند یک سیستم ساده را اجرا کند و در عوض فقط یک برنامه یا دستور را اجرا می‌کند.

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

ساختار میکروکنترلر AVR‌

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

درگاه  های ورودی و خروجی این میکرو کنترلر به صورت گروه های 8 بیتی می باشد که هر کدام نام خاصی دارد حتی در بعضی از این میکرو کنترلرها این درگاه ها قابل برنامه ریزی و به صورت هم ورودی و هم خروجی قابل استفاده  می باشد.

حافظه برنامه پذیر(FLASH)

حافظهٔ اطلاعات داخلی (SRAM)

ریجیسترهای داخلی جهت برنامه‌ریزی

پورت‌های ورودی و خروجی GPIO

درگاه‌ها ورودی / خروجی (I/O )

حافظه EEPROM

انواع میکروکنترلرهای AVR

در زیر‌ چهار گروه این میکرو کنترلر که عبارتند از مگا (mega)، تاینی (tiny‌)، تک منظوره و کلاسیک آورده شده است.

  • میکروکنترلرهای Tiny

میکرو کنترلر‌ tiny در ابعاد مختلف 8، 20 و 28 پایه موجود هستند. و نسبت به بقیه مدل ها از امکانات کمتری برخوردار است، اما cpu قوی دارد و می توان برای عملیات کم حجم و ساده ساتفاده کرد. این نوع از سه حافظه فلش، SRAM و  EEPROM را دارا می باشد. برخی از انواع این میکروکنترلر عبارتند از ATtiny 2313، ATtiny11، ATtiny13 و ATtiny28 .

  • میکروکنترلر mega

این مدل میکرکنترلر دارای حافظه فلش 4 تا 512 کیلوبایتی است و سطح بالاتر از تاینی است. در زیر انواع این نوع میکروکنترلر آمده است که عبارتند از:

  • میکروکنترلر Atmega8 AVR

شامل 28 پین، 1کیلوبایتی ، SRAM، 8 کیلوبایت حافظه فلش، دارای دو رابط سیم، پین خارجی برای اتصال دو ولتاژ به دو ورودی مقایسه کننده است.

کاربرد: عمدتا برای ساخت پروژه‌های الکتریکی و الکترونیکی استفاده می‌شود.

  • میکروکنترلر Atmega16 AVR

از 40 پین تشکیل شده است. همچنین دارای یک نوع حافظه فلش، سرعت 16MIPS ، 1 کیلوبایت رم، شش حالت صرفه‌جویی در مصرف انرژی است.

کاربرد: توسط سیستم تعبیه شده بر روی موبایل کار می‌کند.

  • میکروکنترلر Atmega32 AVR

از 44 پین به همراه حافظه 32 بیتی تشکیل شده است. این نوع از حافظه فلش، سرعت 16 MIPS ، 2048 SRAM و دارای محدوده ولتاژ 7/2 تا 5/5 است.

کاربرد: در سیستم‌های بدون دخالت انسان استفاده می‌شود و توسط سیستم تعبیه شده در موبایل کار می‌کند.

  • میکروکنترلر Atmega328 AVR

معماری RISC شامل حافظه نوع فلش 32 کیلوبایتی، 2 کیلوبایت SRAM ، محدوده ولتاژ عملیاتی از 8/1 تا 5/5 و حافظه EEROM  یک کیلوبایتی (حافظه فقط خواندنی با قابلیت پاک شدن) است.

کاربرد: به طور گسترده‌ای در سیستم‌های آردوینو، رباتیک، نظارت بر قدرت و مدیریت استفاده می‌شود.

  • میکروکنترلر سری کلاسیک

سری کلاسیک یا AT90S اولین سری تراشه‌های میکروکنترلر AVR‌ است. از لحاظ امکانات در حد بین تاینی و mega‌ قرار دارد. برخی از مدل‌های این خانواده عبارتند از AT90S1200،  AT90S2313، AT90S2323 و AT90S8534‌ می‌باشد.

پسوند‌هایی که در میکروکنترلر AVR هستند هرکدام معنی خاصی دارند این پسوند‌ها نشان‌دهنده محدوده ولتاژی و فرکانس میکروکنترلر هستند. درصورتی که بدون پسوند باشند محدوده تغذیه با تغییرات کم( v ~ 5.5 v)  و فرکانس کلاک حداکثر 16 مگاهرتز را نشان می‌دهد.

همچنین پسوند L نشانگر محدودۀ تغدیه با تغییرات متوسط( v ~ 5.5 v7) و فرکانس کلاک تا 8 مگاهرتز است،پسوندA   نیز خصوصیت‌های هر دو مورد قبلی را نشان می‌دهد . پسوند V نیز محدودۀ ولتاژ 8/1 ولت تا 5/5 ولت و فرکانس تا 4 مگاهرتز را نشان می‌دهد.

ویژگی‌های میکروکنترلر AVR

ويژگی‌هایی که به طور خلاصه می‌توان گفت:

  1. بالاترین کارایی و اجرا در CPU
  2. سخت‌افزار ضرب‌کننده روی خود
  3. کدهایی کوچک
  4. هماهنگی بالای سیستم
  5. قابلیت به روزرسانی بالا
  6. حافظه خود برنامه‌ریز
  7. دارای واسط JTAG سازگار با IEEE 1149.1
  8. حاوی بهترین MCU  برای حافظه فلش

 

نوشته های مشابه

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