در قسمت قبل، نحوه آماده سازی محیط برنامه نویسی Eclips (اکلیپس) را برای برنامه نویسی AVR آموزش دادیم. در این قسمت قصد داریم تا با ایجاد یک پروژه جدید AVR در Eclips اولین برنامه خود را (LED چشمک زن) به زبان C برای AVR بنویسیم.
ایجاد اولین پروژه AVR Eclips
اول از همه ضربدر پنجره Welcome را بزنید تا ابزارک های سمت چپ نمایان شوند.
سپس از طریق منوی زیر، یک پروژه AVR Eclips ایجاد کنید.
File -> New-> C/C++ Project
در پنجره باز شده، C Managed Buid را انتخاب کرده و Next را بزنید
در مرحله بعدی، نامی برای پروژه خود انتخاب کنید، همچنین بر روی AVR Cross target Application کلیک کرده و Empty Project را انتخاب کنید. دقت داشته باشید که اشتباهاً حالت دیگری را انتخاب نکنید.
با زدن دکمه Next به مرحله بعدی رفته و در این قسمت، تیک Debug را بر میداریم (چون معمولاً در AVR پروژهها را دیباگ نمیکنیم، مگر آنکه ابزار این کار، یعنی پروگرامر jtag را داشته باشیم). همین طور گزینه Release را نیز انتخاب میکنیم.
در مرحله بعدی نوع تراشه (برای مثال Atmega32) و فرکانس کاری میکروکنترلر را انتخاب میکنیم.
خوب، هم اکنون شما در سمت راست و در قسمت Project Explorer یک پروژه جدید با نامی که انتخاب کردید، دارید.
حال، میبایست یک فولدر برای کدهای خود ایجاد کنیم. برای این کار، ابتدا پروژه را انتخاب کرده و سپس از طریق منوی
File ->New -> Source Folder
و یا کلیک راست کردن بر روی پروژه AVR Eclips یک source Folder جدید میسازیم.
نامی برای پوشه سورس خود میگذاریم، برای مثال: src
همانطور که در تصویر زیر مشاهده میکنید، یک فولدر سورس ایجاد شده است، حال باید یک فایل سورس نیز به آن اضافه کنیم، به همان ترتیب، بر روی پوشه src کلیک راست کرده و یک Source File جدید میسازیم.
در پنجره باز شده، اسم فایل سورس را وارد میکنیم، برای مثال: main.c
بر روی فایلی که ایجاد کردید، دو بار کلیک کنید تا در ویرایشگر باز شود. حال، شما میتوانید کدهای خود را در این فایل وارد کنید:
/* * main.c * * Created on: * Author: Digi Boy */ #include <avr/io.h> #include <util/delay.h> int main (){ DDRA = 0xff; while(1){ PORTA ^= 0b00000010; _delay_ms(1000); } return 0; }
بیلد کردن و کامپایل پروژه
برای بیلد و کامپایل پروژه AVR در Eclips شما میبایست ابتدا یک سری تنظیمات را انجام دهید. از طریق منوی
Windows -> preferences
پنجره preferences را باز کنید.
سپس از طریق منوی زیر، تنظیمات را مطابق تصویر انجام دهید.
General -> Workspace
این تنظیمات، برای این است که هر بار شما پروژه خود را build میکنید، به صورت خودکار ذخیره نیز گردد. همچنین از کامپایل شدن خودکار که باعث کندی سیستم میشود، جلوگیری میکنید. یک بار که این تنظیمات را انجام دهید، کافی است.
بر روی پروژه کلیک راست کرده و properties را بزنید. سپس از طریق منوی زیر، همانند تصویر تیک گزینهها را بزنید. (دقت داشته باشید که پنجره تنظیمات پروژه، با تنظیماتی preferences مرحله قبل متفاوت است و احتمالاً برای هر پروژه میبایست آن را تنظیم کنید.)
C/C++ Build -> Setting
سر انجام، با کلیدهای ترکیبی Ctrl + b و یا با کلیک کردن بر روی علامت چکش در ابزارهای بالای اکلیپس، میتوانید پروژه خود را بیلد کنید. اگر خطایی وجود داشته باشد، در سربرگ problems میتوانید مشاهده کنید.
نصب درایور پروگرامر USBASP
در این آموزش از پروگرامر USBASP استفاده شده است. برای ستفاده کردن از آن در پروژه AVR Eclips و شناخته شدن آن توسط AVRDUDE باید مطمئن شویم که درایور آن به درستی نصب شده است. برای این کار، ابتدا USBASP را به کامپیوتر متصل کرده و سپس نرم افزار Zadig را از این قسمت دانلود کنید. از طریق منوی Options بر روی List all devices کلیک کنید و از لیست USBASP را انتخاب کنید. سپس در کادر جلوی آن، گزینه libusbK(v3.0.7.0) driver را انتخاب کرده و بر روی دکمه install کلیک کنید تا درایور USBASP نصب شود.
تنظیمات پروگرامر در AVRDUE
قبلاً آموزش ADRDUDR را منتشر کردیم. توصیه میکنیم حتماً این آموزش را مطالعه کنید. برای آپلود فایل کامپایل شده بر روی میکروکنترلر، شما میبایست در تنظیمات AVRDUDE، نوع پروگرامر و تنظیمات آن را وارد نمایید. برای این کار، از طریق منوی زیر وارد تنظیمات AVRDUDE شوید:
windows->preferences->AVR->Avrdude->New
در این آموزش از پروگرامر USBASP استفاده شده است. بنابراین، باید یک کانفیگ برای USBASP ایجاد کنیم (اگر از پروگرامر دیگری استفاده میکنید، به جای USBASP تنظیمات مربوط به همان را وارد کنید). نام کانفیگ را USBASP میگذاریم، از لیست پروگرامر ها، USBASP را انتخاب میکنیم و در کادر port مقدار usb را وارد مینماییم و کانفیگ را ذخیره میکنیم تا در پروژههای AVR Eclips بتوانیم از آن استفاده کنیم.
حال، یک کانفیگ برای پروگرامر USBASP داریم، در پروژهای که میخواهیم بر روی میکروکنترلر آپلود کنیم، کلیک راست کرده و وارد properties میشویم. از منوی AVR وارد تنظیمات AVRDUDE میشویم. (دقت داشته باشید که منوی تنظیمات AVRDUDE که در preferences بود، با منویی که در properties پروژه وجود دارد، متفاوت است.) سپس در قسمت پروگرامر، کانفیگ USBASP که در مرحله قبل ساختیم را انتخاب کرده و OK را بزنید.
پس از اینکه پروژه خود را بیلد کردید، میتوانید با استفاده از دکمه آپلود در بالای Eclips فایل هگز خود را به راحتی بر روی میکروکنترلر آپلود کنید!
جمع بندی
آیا هر بار برای ایجاد یک پروژه AVR Eclips جدید باید تمام مراحل بالا را طی کنید؟ قطعاً نه! زیرا ما در اینجا یک سری تنظیمات را برای بار اول انجام دادیم و دفعات دیگر، بسیاری از این مراحل انجام شدهاند. شما تنها کافی است تا از طریق منوی File->New C project یک پروژه جدید با نام دلخواه و برای میکروکنترلر خود ایجاد کنید، سپس بر روی پروژه فولدر سورس و فایل سورس را بسازید. در properties پروژه نیز تنظیمات بیلد را برای ساخته شدن فایل HEX مطابق تصویر انتخاب کنید. در قسمت AVRDUDE نیز کانفیگ مربوط به پروگرامر خود را (USBASP) که ساختید، انتخاب کنید.
منبع:سیسوگ