برنامه نویسی میکروکنترلر و رباتیک (CodeVisionAVR)     مهندسی برق - الکترونیک 

پژوهشگر و نویسنده: (  افشین رشید )


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

 برنامه نویسی میکرو کنتلر های AVR و  رباتیک (CodeVisionAVR)

ابتدا برنامه را نصب میکنیم بهتر است برای سازگاری با بیشتر میکروکنترلر ها ورژن 3.4 برنامه CodeVisionAVR را نصب کنیم:

در نسخه 3.12 و بالاتر از آن در نرم­افزار کدویژن ساخت فایل پروژه و سورس ساده تر شده است. به این صورت که در همان ابتدا از منوی File گزینهNew Project  را انتخاب می­کنیم و در حین ساختن فایل پروژه، از کاربر نوع میکرو مورد استفاده و نام فایل سورس پرسیده شده و این فایل به صورت خودکار به پروژه اضافه می­گردد و نیاز به طی کردن این مراحل طولانی نمی­باشد


(پروژه 1 )
در این پروژه یک LED به پایه شماره 1 (PB0)میکرو متصل بوده و می خواهیم برنامه ­ای بنویسیم که میکروکنترلر این LED را با فواصل زمانی معین(مثلا یک ثانیه) خاموش و روشن نماید.
نحوه ایجاد یک پروژه در کدویژن
ابتدا در نرم افزار کدویژن از منوی File گزینه New Source File را مانند شکل زیر انتخاب می­ کنیم:
ایجاد می­ شود. حال با استفاده از منوی فایل گزینه Save as  این فایل را با نام test.c در یک پوشه  به نام New ذخیره می­ نماییم.حال از منوی File گزینه New Project یک فایل پروژه ایجاد می­ کنیم.
در پنجره باز شده بعدی کدویژن از ما می­ پرسد که آیا می­خواهیم از ابزار CodeWizard استفاده کنیم یا خیر. کدویزارد یک ابزار برای تولید اتوماتیک برنامه می­ باشد که موجب آسان­تر شدن کار برنامه نویسی می­شود. فعلا ما از این ابزار استفاده نمی ­کنیم. روی گزینهNO کلیک می­ کنیم.

 

در پنجره باز شده فایل پروژه خود را با نام Led.prj در همان پوشه New ذخیره می­ نماییم. با این کار یک پنجره برای پیکربندی پروژه باز می ­شود.تا اینجای کار ما یک فایل سورس با پسوند c. و یک فایل پروژه با پسوند prj ساخته ایم. در برنامه نویسی میکروکنترلرها به زبان C همیشه باید یک یا چند فایل سورس به یک فایل پروژه متصل شوند. برای اینکه فایل test.c را به led.prj اضافه کنیم از پنجره پیکربندی پروژه (Configure Project) گزینه Add را انتخاب می­ کنیم:
در پنجره باز شده فایل test.c را از محل ذخیره شده پیدا کرده و انتخاب می­نماییم. با این کار فایل test.c به پروژه اضافه می­ کنیم.در همین پنجره از لبه C Compiler نیز نوع میکروکنترلر به کار رفته را ATmega32 و نرخ پالس ساعت را 8 مگاهرتز انتخاب می­نماییم.در نهایت روی OK کلیک می­ نماییم.پس از انجام این مراحل قسمت Code Navigator در سمت چپ باید به صورت شکل زیر درآید که در آن فایل test.c به فایل پروژه به نام led اضافه شده باشد:
حال برنامه زیر را در داخل فایل test.c وارد می­ نماییم:
بعد از نوشتن این برنامه در فایل سورس نوبت به ساختن فایل با پسوند هگز(Hex) می­ رسد. در واقع این کار با کامپایل کردن پروژه مورد نظر انجام می­ شود.  با این کار کامپایلر برنامه نوشته شده به زبان C را به کدهای صفر و یک قابل فهم برای CPU تبدیل می­کند. برای این کار از منوی Project گزینه Build را مانند شکل زیر انتخاب می­ نماییم:

در این پنجره  اطلاعاتی در مورد برنامه نوشته شده وجود دارد: 
اگر برنامه خطایی داشته باشد کامپایلر به برنامه نویس اعلام می­کند. همچنین در قسمت پایین این پنجره میزان حافظه­ ای که توسط این برنامه از میکرو اشغال می ­شود نمایش داده می­ شود.حال اگر برنامه بدون خطا کامپایل شده باشد در همان دایرکتوری که پروژه را ساخته ایم یک پوشه جدید با نام EXE ایجاد شده و در داخل آن پوشه یک فایل با نام led.hex به طور خودکار ایجاد شده است. 

این همان برنامه­ ای که نوشته­ ایم به زبان ماشین(صفر و یک) می ­باشد. حال اگر بخواهیم در واقعیت برنامه نوشته شده را آزمایش کنیم باید همین فایل را با استفاده از پروگرامر در داخل حافظه فلش میکرو پروگرام داخل ic حافظه بر روی برد ربات مورد نظر وارد کنیم (ic حافظه) نماییم. 

پژوهشگر و نویسنده:  (  افشین رشید )