آموزش avr بخش اول 3/5 (1)

0
1065

مقدمه

میکروکنترولر یک کامپیوتر در ابعاد خیلی کوچک با امکانات محدود است که می تواند بسته به برنامه ای که دارد، عملیات مورد نظر را انجام دهد. علت استفاده از نام میکرو این است که حساسیت، سرعت و دقت این کامپیوترها در حد میکرو ثانیه است و فرکانس کاری آنها حدود چند مگاهرتز می باشد. این مینی کامپیوتر ها در مصارف مختلفی به کار گرفته می شوند. بطور مثال ماشین لباسشویی و درب باز کن اتوماتیک پارکینگ نمونه هایی از موارد بی شمار استفاده از این ریز کامپیوترها است. شرکت های مختلفی در زمینه تولید میکروکنترولر ها فعالیت دارند که از بین آنها می توان به شرکت هایی مانند Microchip سازنده میکروکنترولرهای PIC و ATMEL سازنده میکروکنترولرهای AVR اشاره کرد. میکروکنترولرهای AVR محصول شرکت Atmel هستند و شامل سه دسته کلی می شوند. در این آموزش به معرفی این سه دسته می پردازیم:

  1. میکروکنترولرهای قدیمی یا کلاسیک که نام آنها با عبارت “AT” آغاز می شود. مانند AT89S51
  2. میکروکنترولرهای کوچک که با نام Tiny شناخته می شوند و در ابتدای نام آنها عبارت “AT tiny” قرار دارد. مانند AT tiny88
  3. میکروکنترولرهای سری Mega که نام آنها با عبارت “ATmega” شروع می شود. مانند Atmega8

[divider]

معماری

از نظر معماری تمامی میکروکنترولرهای AVR دارای یک Mini System کامپیوتری هستند. یعنی یک بخش پردازش مرکزی(CPU)، حافظه(موقت و دائم) و تعدادی ورودی/خروجی دارند. تفاوت های موجود در این سه بخش علت اصلی بوجود آمدن میکروکنترولرهای مختلف است. اکثر میکروکنترولرهای AVR دارای پردازنده ی ۸ بیتی هستند و می توانند چند میلیون عملیات را در یک ثانیه انجام دهند. در حدود ۸KB تا ۱MB حافظه برنامه نویسی(Flash) و حدود چند کیوبایت RAM دارند. معمولا هر میکروکنترولر یک EEPROM با ظرفیتی در حدود ۱KB برای نگهداری اطلاعات یا نتایج عملیات بصورت طولانی مدت، دارد.

[divider]

برنامه ریزی میکروکنترولر

برای اینکه بتوانیم یک میکروکنترولر را برنامه ریزی کنیم، ابتدا باید برنامه خود را در محیط کدنویسی کامپایلر بنویسیم و سپس کد خود را کامپایل کنیم. در نهایت خروجی کامپایل یک فایل با پسوند hex خواهد بود که باید به حافظه Flash میکرو منتقل شود. این عمل انتقال توسط Programmer انجام می شود. پروگرمر در واقع یک برد سخت افزاری است که به کامپیوتر متصل می شود و با میکروکنترولر مورد نظر در ارتباط است. توسط یک نرم افزار واسط، فایل hex به پروگرمر فرستاده می شود و پروگرمر داده ها را در داخل حافظه Flash میکرو قرار می دهد. معروف ترین پروگرمرهای AVR عبارتند از:

دو مورد اول از طریق پورت سریال(۹ پایه) یا موازی(۲۵ پایه) پرینتر، با کامپیوتر ارتباط پیدا می کنند. اما مورد سوم از طریق USB به کامپیوتر متصل می شود. اگر سیستم عامل کامپیوتری که بر روی آن کدنویسی می کنید Windows 8 یا ۸٫۱ باشد، بهتر است از USBasp استفاده کنیم. این نوع پروگرمر را می توان با قیمت مناسب تهیه نمود. حتی می توانید خودتان یک نمونه از آن را بسازید. اطلاعات تکمیلی درباره این پروگرامر را می توانید در وب سایت رسمی آن بیابید.

AC-PG-USBASP_03-W490

usbaspver2

توجه داشته باشید که باید با توجه به نوع پروگرمر خود، نرم افزار واسط را نیز تهیه کنید. به عنوان مثال برای پروگرمر USBasp می توانید از نرم افزار واسط ایرانی Khazama AVR Programmer که توسط Behzad Khazama ساخته شده است، استفاده کنید.

 

[divider]

برنامه نویسی میکروکنترولر

بسته به زبانی که می خواهید با آن برنامه نویسی کنید، می توانید کامپایلر مربوطه را انتخاب نمایید. سه مورد از معروفترین کامپایلرهای AVR عبارتند از:

  • Bascom AVR برای برنامه نویسی به زبان بیسیک
  • CodeVision AVR برای برنامه نویسی به زبان C
  • Atmel Studio برای برنامه نویسی به زبان های C،C++،Assembly

ما برای سادگی، آموزش کامپایلر CodeVision AVR را دنبال خواهیم کرد. در نتیجه زبان C را بعنوان زبان برنامه نویسی خود انتخاب می کنیم.

موفق و پیروز باشید…

به این مطلب امتیاز بدهید

ارسال یک پاسخ

لطفا دیدگاه خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید