در این مقاله به بررسی میکروکنترلر AVR می پردازیم، شما خواننده محترم، با مطالعه این مقاله، خواهید دانست که میکروکنترلر AVR چیست و همچنین کاربرد و انواع آن چه می باشد.
با ما همراه باشید.
آن چه که بشر در دنیای امروز به دنبال آن است، دستیابی به زندگی ای هوشمند جهت رسیدن به رفاه بیشتر می باشد.
در همین راستا، ساخت میکروکنترلر ها را می توان قدمی بزرگ در راه رسیدن به این هدف به شمار آورد.
میکروکنترلر ها که نوعی چیپ الکترونیکی قابل برنامه ریزی محسوب می شوند و
قابل استفاده جهت کنترل نمودن دستگاه هایی هستند که نیاز به ذخیره اطلاعات و اندازه گیری و اجرای آن دارند.
در واقع با ثبت یک فرمان در این قطعات می توان اجرای عملیات گوناگونی را از آن انتظار داشت.
و اما آن چه که در این مطلب به دنبال آن هستیم، بررسی میکروکنترلر ای وی آر (AVR) به عنوان خانواده ای از میکروکنترلرها است که
ظهور آن را می توان نتیجه یک پروژه تحقیقاتی دانشجویی دانست.
میکروکنترلری که نمونه اولیه آن توسط دو دانشجو و محقق نروژی ارائه و سپس در شرکت (ATMEL) ساخته و عرضه شد.
اما سؤال اینجا است که میکروکنترلر AVR چیست و ساختار آن متشکل از چه اجزایی است؟
در ادامه مطلب همراه با ما به پاسخ این سؤالات دست خواهید یافت.
AVR که بنا بر باور بسیاری از متخصصان مخففی از نام سازندگان آن (Alf and Vegard’s RISC Processor) می باشد، نوعی میکروکنترلر محسوب می شود.

یک شبه رایانه هوشمند در ابعادی کوچک، که کاربر با برنامه نویسی قادر به کنترل عملیات آن خواهد بود.
در واقع می توان گفت میکروکنترلر AVR دارای تمام ویژگی های یک رایانه، با قابلیت پردازش و محاسبات، اما در ابعادی محدودتر است.
در جواب این که میکروکنترلر AVR چیست باید بگوییم، این میکروکنترلر عرضه شده در بازار الکترونیک، از جمله محصولات شرکت (ATMEL) می باشد که
با یک طراحی پیشرفته در حجمی کم و سرعت بالای اجرا، به تولید رسیده است.
حافظه های به کار رفته در میکروکنترلر AVR شامل (FLASH) و (EEPROM) می باشد.
یکی از قابلیت های قابل توجه این میکروکنترلر، امکان برنامه نویسی با استفاده از کامپایلر زبان های برنامه نویسی در سطح بالا است.
در توضیح باید گفت، کامپایلر امکانی برای تبدیل زبان های برنامه نویسی سطح بالا به سطوح پایین تر و در سطح ماشین می باشد.
به طور مثال از جمله کامپایلرهای طراحی شده جهت برنامه نویسی میکروکنترلر AVR، از کامپایلر (BASCOM) زبان (BASIC) و (Codevision) که کامپایلر زبان (C) است می توان نام برد.
علاوه بر این AVR عرضه کننده میکروکنترلرهای 8 بیتی و 32 بیتی نیز می باشد.
و اما شاید این سؤال ذهن شما را مشغول کند که معماری به کار رفته در ساخت میکروکنترلر AVR چیست؟
در واقع در این میکروکنترلر از دو نوع معماری بهره برده می شود:
1- معماری (CISC) / (Complex Instruction Set Computer)
2- معماری (RISC) / (Reduced Instruction Set Computer)
در بخش قبل تا حدودی با قابلیت های AVR آشنا شدیم.
حال می دانیم که میکروکنترلر AVR چیست.
اما یکی دیگر از نکات لازم، آشنایی با ساختار تشکیل دهنده یک میکروکنترلر AVR است که در ادامه به برخی از اجزاء تشکیل دهنده آن اشاره خواهیم نمود:

1- حافظه برنامه (Flash)
2- حافظه داده (EEPROM) & (SRAM)
3- واحد ورودی و خروجی (input/output)
4- بخش کنترل کلاک ورودی
5- مبدل آنالوگ به دیجیتال (ADC) / (Analog to Digital Converter)
6- بخش ارتباط سریال (TWI)، (SPI)، (USART)
7- واحد پردازش مرکزی (CPU)
8- تایمر/کانتر (Timer/Counter Blocks)
9- مقایسه آنالوگ (Analog comparator)
10 واحد (LCD Controller)
میکروکنترلر های AVR به طور کلی در چهار دسته اصلی تقسیم بندی می شوند که هر یک از انواع آن دارای ویژگی های مختص به خود می باشد:
میکروکنترلرهای سری (ATtiny) از نظر امکانات نسبت به سری های دیگر از امکانات کمتری برخوردار است.

البته با وجود سطح پایین تر امکانات، این نوع میکروکنترلر، از (CPU) بسیار قوی برخوردار است.
اگر بپرسید ویژگی این سری از میکروکنترلر AVR چیست باید بدانید، این میکروکنترلر گزینه ای مناسب برای عملیات های ساده با حجم کم و کارایی بالا به شمار آورد.
این میکروکنترلر مجهز به سه حافظه می باشد:
1- حافظه (FLASH)
2- حافظه (SRAM)
3- حافظه (EEPROM)
همچنین از جمله میکروکنترلرهای سری TINY AVR می توان به موارد زیر اشاره نمود:
همانطور که پیداست پیشوند (AT) از شرکت سازنده این سری میکروکنترلرها یعنی Atmel گرفته شده است.
این سری از میکروکنترلرهای AVR مجهز به حافظه (FLASH) 4 الی 512 کیلوبایت می باشد.

همچنین امکانات این سری از AVR نسبت به سری های (AT90S) و (AT tiny) در سطح بالاتری قرار دارد.
از جمله میکروکنترلرهای سری (Mega AT) می توان به موارد زیر اشاره نمود:
سری (X Mega) را می توان یکی از قوی ترین و البته پر سرعت ترین سری های میکروکنترلرهای AVR به شمار آورد.
این سری از AVR که از جمله جدیدترین سری های این نوع میکروکنترلر نیز محسوب می شود، دارای حافظه FLASH بین 16 الی 386 کیلوبایت می باشد.
همچنین در مقایسه با سایر سری های این نوع میکروکنترلر، از امکانات بیشتری برخوردار است.
برخی میکروکنترلرهای سری (X Mega) شامل موارد زیر می باشد:
سری (AT90S) که با نام (Classic) نیز شناخته می شود از اولین سری های میکروکنترلرهای AVR محسوب می شود که
از امکانات نسبتاً کمی برخوردار می باشد.

برخی از انواع میکروکنترلر سری (AT90S) به شرح زیر می باشد:
در این بخش قصد داریم به بررسی این نکته بپردازیم که امکانات و قابلیت های موجود در میکروکنترلر AVR چیست
برخی از این امکانات به شرح ذیل می باشد:
1- انتخاب چند ولتاژ مرجع جهت مبدل آنالوگ به دیجیتال و یا همان (ADC)
2- قابلیت انتقال پایه های مربوط به واحدهای داخلی از یک پورت به پورت دیگر
3- امکان برنامه ریزی و دیباگ به وسیله رابط (JTAG)
4- بهره گیری از بهترین (Master Control Unit) و یا همان (MCU) جهت حافظه فلش (FLASH)
5- برخورداری از حافظه خود برنامه ریز
6- وجود حالاتی جهت ترفیع (Upgrade)