AVR, توصیه شده, دانلود نرم افزار - Download, مقاله

آماده سازی محیط Eclips برای برنامه نویسی میکروکنترلر های AVR

در این مقاله از سیسوگ می‌خواهیم یک ابزار قدرتمند و استاندارد برای برنامه نویسی میکروکنترلر های AVR به شما معرفی کنیم. اکلیپس Eclips یک محیط یکپارچه برنامه نویسی (IDE) متن باز است که امکانات بسیار خوبی برای راحتی برنامه نویسان دارد. با ترکیب این محیط کاربرد پسند با ابزارهای AVR محیط برنامه نویسی AVR Eclips خودمان را آماده می‌کنیم!

 

مروری کلی بر ابزار های موجود

قبلاً در سیسوگ و در مقالات چرا کدویژن نه! و بررسی بهترین زبان، کامپایلر و محیط‌های برنامه نویسی مختلف برای میکروکنترلر AVR برخی از محیط‌های برنامه نویسی و کامپایلرهایی که برای AVR وجود دارد، را بررسی کردیم و ایرادات هر کدام را متوجه شدیم.

برای مثال، کدویژن یک کامپایلر کرک شده غیر استاندارد است و تنها آپشن ویرایشگر آن این است که وقتی یک پرانتز یا آکولاد را انتخاب می‌کنید، ابتدا و انتهای آن را برای شما به رنگ زرد در می‌آورد! همچنین در مقاله کامپایلر Codevisionavr در مقابل کامپایلر GCC و مقایسه تخصصی آنها مشخص شد که از زبان ANSI C به جای زبان C پشتیبانی می کند که بسیار قدیمی است. کدویژن حتی از متغیرهای 64 بیتی نیز پشتیبانی نمی‌کند!
WINAVR نیز که از کامپایلر استاندارد GCC استفاده می‌کند، بسیار قدیمی بوده و کار با آن برای مبتدیان کمی سخت است. ATMEL STUDIO که توسط خود شرکت سازنده AVR معرفی شده، تمامی استانداردهای لازم را دارد، اما متأسفانه به دلیل استفاده از Visual Studio حجم بسیار زیادی داشته و اجرای آن بر روی سیستم‌های قدیمی سنگین است.
از طرفی، بسیاری از لایبری های بسیار خوب و قوی موجود بر روی اینترنت برای WINAVR و یا ATMEL STUDIO نوشته شده‌اند. همچنین با توجه به قابلیت‌های زبان C، این زبان در مقایسه با زبان‌های دیگری مثل پایتون و بسکام، برای کاربردهای امبدد بسیار بهتر است.

 

اما راه حل چیست؟!

توجه داشته باشید که ما صرفاً معایب هریک از کامپایلرها و محیط‌های برنامه نویسی مختلف را بررسی کنیم. قطعاً هر کدام مزایا و کاربرد خاص خودشان را دارند و اگر تا کنون از هر ابزاری استفاده می‌کردید و جواب گوی نیاز شما بوده، احتمالاً ازین پس نیز، نیازی به تغییر آن نیز نخواهید داشت. انتخاب ابزار درست، تنها بخشی از روند برنامه نویسی است. گاهی اوقات، اگر شما سوار بهترین خودرو نیز باشید، اما مسیر اشتباهی را طی کنید، به هدف خود نخواهید رسید. مهم هدف شماست و نحوه استفاده شما از این ابزارهاست. تمامی این ابزارها شما را به هدفتان خواهند رساند. ما در اینجا صرفاً مجموعه‌ای از بهترین ابزارهای استاندارد و متن باز را معرفی می‌کنیم تا به اصولی‌ترین روش ممکن اهداف خود را پیش ببرید.

یکی از اصولی‌ترین راه‌های برنامه نویسی میکروکنترلر AVR، استفاده از کامپایلر استاندارد GCC ارائه شده توسط خود سازنده، به همراه یک محیط برنامه نویسی حرفه‌ای و کاربر پسند مثل Eclips است که در مقایسه با ATMEL STUDIO اجرای آن راحت‌تر است. اما انجام این کار نیز نیاز به کمی تجربه دارد. به همین خاطر بسیاری از افراد استفاده از همان IDE های معمول را ترجیح می‌دهند.

بنا به درخواست‌های مکرر شما، در این مقاله، سعی داریم تا به‌صورت تصویری، AVR Eclips خودمان را بسازیم تا مشکل بسیاری از شما برنامه نویسان برای انجام این کار برطرف گردد! آموزش نصب بر روی سیستم ویندوز انجام شده است، اما به طریقی مشابه، برای سیستم عامل‌های لینوکس و مک نیز قابل انجام خواهد بود.

 

 

موارد مورد نیاز

  • AVR8 GNU Toolchain
  • Make File
  • AVRDUDE
  • Java SE Runtime Environment (JRE)
  • Eclipse cpp Mars (IDE) + AVR Plugin

 

تولچین و ابزار های AVR

تولچین AVR یعنی زنجیره‌ای ابزارهای لازم برای برنامه نویسی AVR که توسط خود سازنده این تراشه‌ها برای برنامه نویسان عرضه شده است. این ابزارها شامل کامپایلر AVR-GCC نیز می‌باشد. ما برای ساخت AVR Eclips به این تولچین نیاز خواهیم داشت. همان طور که میدانید، تراشه‌های AVR قبلاً توسط شرکت ATMEL تولید می‌شدند، اما هم اکنون کل آن شرکت توسط microchip خریداری شده است. بنابراین، برای دانلود آخرین نسخه تولچین AVR باید به وب سایت میکروچیپ و صفحه دانلود تولچین آن مراجعه کنید، اما متأسفانه باید ابزار گذر از تحریم داشته باشید و در وب سایت میکروچیپ هم ثبت نام کنید، به همین خاطر و برای راحتی شما، نسخه ویندوزی آن را به سرور سیسوگ منتقل کردیم تا بتوانید با لینک مستقیم دانلودشان کنید.

ابزار make file

قبلا در سری مقالات از نرم‌افزار تا سخت‌افزار – قسمت اول – ساختار کامپایلر با روند کامپایل فایل‌ها در زبان C را به زبان ساده آموزش داده‌ایم، و کاربرد ابزاری به نام make file را نیز توضیح داده‌ایم. شما برای کامپایل کردن کدهای زبان C به این ابزار نیز احتیاج خواهید داشت. هیچ جای نگرانی وجود ندارد، چون شما برای برنامه نویسی، نیازی نیست تا با این ابزار مستقیم کار کنید و خود IDE به‌صورت اتوماتیک تمام کارها را برایتان انجام خواهد داد. ابزارهای make file را می‌توانید از طریق گیت هاب دانلود کنید و سپس پوشه bin آن را به path ویندوز اضافه کنید. اما توجه داشته باشید که برای راحتی شما، ابزارهای make file را نیز درون همان پوشه ابزارهای تولچین اضافه کرده‌ایم و اگر تولچین AVR را از سرور سیسوگ دانلود می‌کنید، نیازی به دانلود make file نیز نخواهید داشت. همچنین از آنجایی که ابزارهای make File را با ابزارهای تولچین ترکیب کرده‌ایم، بدیهی است که تنها اضافه کردن مسیر تولچین در مرحله قبل به path کافی است و نیازی به اضافه کردن مسیر make file به صورت جداگانه نیز نخواهد بود.)

پس این مرحله هیچی (:

 

ابزار AVRDUDE

AVRDUDE یک ابزار است که تحت محیط فرمان اجرا می‌شود و توسط آن می‌توانید میکروکنترلر های مختلف AVR را با انواع پروگرامر ها برنامه ریزی کنید. در مقاله ابزار حرفه ای avrdude برای پروگرام کردن AVR آموزش کار با این ابزار داده شده است، توصیه می‌کنم این مطلب را از دست ندهید. avrdude را می‌توانید از این لینک دانلود کنید. (اگر ویندوزی هستید، فایل avrdude-6.3-mingw32.zip را دانلود کنید.) پس از استخراج، دو فایل با نام avrdude و avrdude.conf خواهید داشت و می‌بایست محل این ابزار را نیز در path اضافه کنید.
اما از آنجایی که این ابزار حجم بسیار کمی داشته و احتمالاً آپدیت دیگری برای آن نخواهد آمد، آن را نیز در Toolchain دانلودی از سرور سیسوگ برای شما قرار داده‌ایم!

این مرحله ام هیچی! (;

 

(صرفاً جهت اطلاع) محیط‌های برنامه نویسی آردوینو، WINAVR و ATMEL STUDIO نیز تقریباً از همین ابزارها (یا مشابهشان) استفاده می‌کنند و درون فولدرهای آن‌ها می‌توان این ابزارها را نیز پیدا کرد، اما با این حال، بهتر است آن‌ها را از آدرس‌های ذکر شده دانلود کنید.

 

اضافه کردن ابزار ها به PATH ویندوز

پس از دانلود تولچین و دیگر ابزارها، می‌بایست آن‌ها را در فولدری استخراج کنید و مسیر پوشه bin داخل آن را در path ویندوز اضافه کنید. بهتر است آن‌ها را در درایو C ویندوز قرار دهید. همان طور که بالاتر نیز اشاره شد، اگر از سرور سیسوگ دانلود کنید، همه ابزارهای تولچین، make file و AVRDUDE در یک پوشه قرار گرفته‌اند. پس از دانلود، اگر آن را در درایو C استخراج کنید و به فولدر bin داخل آن بروید، می‌بایست فایل‌هایی مثل تصویر زیر را مشاهده کنید:

AVR Toolchain Files

 

حال، این مسیر را باید در path ویندوز اضافه کنیم، برای این کار بر روی this PC کلیک راست کرده و properties را بزنید.

thisPC properties

 

سپس بر روی Advances Envirenment setting کلیک کنید.

Advanced system setting

ویندوزAdvanced system setting

 

از پنجره system properties و از تب Advanced، ‏Envirenment Variables را انتخاب کنید.

system properties

 

در پنجره‌ای که باز شد، گزینه ADD را بزنید تا بتوانید مسیر تولچین AVR را در PATH اضافه کنید:

Add to path

 

مطمئن شوید که مسیر به درستی اضافه شده است:

AVR Toolchain path

 

همه پنجره‌ها را OK بزنید، در صورتی که همه چیز به درستی انجام شده باشد، اگر دستور avr-gcc را در محیط cmd وارد کنید، باید خروجی زیر را مشاهده کنید:

اگر دستور برای cmd ناشناخته بود، مسیر بالا را به درستی انجام نداده‌اید.

 

نصب جاوا و اکلیپس

اکلیپس یک محیط برنامه نویسی متن باز است که با استفاده از جاوا نوشته شده است، بنابراین برای اجرای آن، باید JRE را نصب داشته باشید. برای دانلود JRE از وب سایت اوراکل (Oracle) هم می‌بایست ابزار گذر از تحریم داشته باشید و هم در آن ثبت نام کنید تا لینک دانلود برایتان فعال شود. اما با یک جستجو ساده در گوگل، می‌توانید به راحتی جاوا را از سایت‌های ایرانی دانلود کنید.
محیط برنامه نویسی Eclips را نیز می‌توانید از وب سایت اصلی آن دانلود کنید. توجه داشته باشید که باید نسخه CPP آن را دانلود کنید، زیرا زبان مورد استفاده شما C و C++ است. همچنین باید نسخه Mars آن را دانلود کنید، زیرا پلاگین AVR بر روی آن به خوبی اجرا می‌شود. بنابراین، از طریق این لینک Eclips CPP MARS را دانلود کنید.

نصب پلاگین AVR

بعد از باز کردن Eclips، از شما می‌خواهد که آدرسی را برای پروژه‌های خود مشخص کنید. آدرس دلخواه و مشخصی را در آن وارد کرده و Launch کنید.

نکته: اگر به جز این Eclips نسخه دیگری را نیز نصب دارید، آدرس workspace آن‌ها را یکجا را انتخاب نکنید و مسیرهای متفاوتی را تعیین کنید.

ورک اسپیس AVR Eclips

 

سپس نوبت به نصب پلاگین AVR بر روی Eclips می‌باشد. از طریق منوی

Help -> Eclips Marketplace

وارد market place شوید.

Eclips Market Place

 

سپس AVR را جستجو کرده و پلاگین آن را نصب کنید.

Eclips AVR Plugin

پس از نصب، یک بار Eclips بسته و مجدداً باز خواهد شد. تبریک! محیط برنامه نویسی استاندارد شما برای AVR شما آماده است!

 

خلاصه مراحل نصب AVR Eclips

به‌طور خلاصه، اگر کارهایی که تا اینجا انجام داده‌ایم را بخواهیم جمع بندی کنیم، ابتدا تولچین AVR، ابزار make file و avrdude را از طریق لینک‌های داده شده دانلود کرده و یا همگی را یکجا از سرور سیسوگ دانلود می‌کنیم. سپس مسیر آن‌ها را به path اضافه می‌کنیم. Eclips CPP Mars را نیز از وب‌سایت آن دانلود کرده و اگر جاوا را هم از قبل نداریم، نصب می‌کنیم. با نصب پلاگین AVR، محیط برنامه نویسی ما آماده است! اسم آن را AVR Eclips می‌گذاریم. به همین راحتی!

در قسمت بعدی، یک پروژه ساده چشمک زن، با استفاده از AVR Eclips خواهیم ساخت.

انتشار مطالب با ذکر نام و آدرس وب سایت سیسوگ، بلامانع است.

شما نیز میتوانید یکی از نویسندگان سیسوگ باشید.   همکاری با سیسوگ

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

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

21 دیدگاه در “آماده سازی محیط Eclips برای برنامه نویسی میکروکنترلر های AVR

  1. y گفت:

    قسمت بعدش کی میاااددد؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

    1. Digi Boy گفت:

      درود بر شما، قسمت بعدی منتشر گردید:
      https://8bi.ir/5ws2i

  2. آریان گفت:

    تمایل به استفاده از ابزارهای متن باز چیزیه که زیاد در بین ما مرسوم نیست و این نوع مقاله ها به بهبود این روند کمک میکنه.ممنون بابت اشتراک این مطلب مفید و زمانی که صرف کردید.

    1. Digi Boy گفت:

      درود بر شما. بله، متأسفانه همین طوره و خیلی‌ها از مزیت‌های متن باز بودن نیز مطلع نیستند. لطفاً با معرفی ما به دوستانتان، از ما حمایت کنید.

  3. مجتبی گفت:

    نصبش کردم. کدویژن چی‌بود آخه نه رنگی نه هیچی.
    ممنون از تیم سیسوگ بابت زحماتی که می کشید.

    1. Digi Boy گفت:

      خواهش می کنم. لطفا مطالب ما رو با دوستانتون به اشتراک بگذارید.

  4. ali گفت:

    سلام
    خدا قوت مقاله خوبی برای تازه واردان به دنیای gcc بود
    فقط یک مسئله ای که است اینکه اون avr gcc یه کم قدیمی با gcc ۵٫۲ هست نسخه جدید بیلد شدش ۱۰٫۱ تو یه سایت هست.
    و آخه RAM از سر راه اوردم یک گیگ بدم eclipse !!!

    1. Digi Boy گفت:

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

      1. ALI گفت:

        https://blog.zakkemble.net/avr-gcc-builds
        البته مشخصا خودم هم می تونم build کنم ولی آخه با دوهستهcpu!! یادمه یه بار که build کردم رو ابونتو سه ساعتی طول کشید 😑
        بعد از جهت مصرف رم هم من نسبت به vs code گفتم الآن خیلی وقته دیگه با اون و platformio کار می کنم.
        این تولچین هم جایگزین تولچین پیش فرض platform io کردم تا الآن که عالی بوده و به مشکلی بر نخوردم.

          1. Ali گفت:

            عجب از چه لحاظ بود !؟

          2. Digi Boy گفت:

            از بابت تجربیات و خاطرات مفیدتون 😊

        1. ALI گفت:

          آخرین نسخه gcc 11.1 برای avr در سایت قرار گرفت 🤩🤩

      2. ALI گفت:

        قابل اعتماد بودن از جه لحاظ ؟!!
        تا بحال از این جنبه نگاه نکرده بودم
        اگر بدون خطا build بشه بازم ممکنه مشکلی داشته باشه ؟
        به هر حال من که تابحال ازش مشلکی ندیدم

        1. Digi Boy گفت:

          درود بر شما، از لحاظ بهینه بودن و performance، به هر حال تولچینی که خود سازنده ارائه می‌ده، اعتبار بیشتری داره و توسط خود سازندگان اون تأیید شده. باید دید آیا منبع شما تا چه اندازه معتبر هست.

    2. فرهاد گفت:

      سلام.
      حاجی اکلیپس 400 مگ رم بیشتر نمیگیره کجا یه گیگ میگیره؟ دم سیسوگ گرم از شر کدویژن لعنتی خلاص شدم یک ماه وقتمو برا یه ارور الکی گرفت کد هم سالم سالم بود ارورای میداد به مغز جن نمیرسه چرا تو آموزشا فقط کدویژن استفاده میکنن نمیدونم

  5. میثاق گفت:

    ایییول خودشهههه منتظر قسمت بعد هستیم. لطفا زود تر منتشر کنین……

  6. فرامرز گفت:

    دمتون گرم. برای کدنویسی AVR با همون Atmel studio کنار میام ولی برای کدنویسی ARM تو محیط IAR برام قابل تحمل نیست :))
    واسه همین از VS Code و یه پلاگین استفاده کردم که خیلی عالی شد، ولی فعلا موفق نشدم باهاش کامپایل یا دیباگ کنم و فقط در حد ادیتور استفاده میکنم. آموزش اونم اگه بذارید خیلی خوبه.

    1. Digi Boy گفت:

      درود بر شما آموزش برنامه نویسی AVR در محیط VS CODE رو قبلاً منتشر کردیم:

      https://8bi.ir/txp8p