آموزش MSP430آموزش الکترونیک

آموزش برنامه نویسی MSP430 با کد کامپوزر استودیو

یادگیری نحوه استفاده از میکروکنترلرهای TI قطعا مهارتی مفید برای ما خواهد بود زیرا TI بسیار بزرگ است و دارای جامعه گسترده ای از میکروکنترلر ها است که می توانند با قیمت کم انعطاف پذیری بالایی را ارائه دهند. ما قبلا برنامه نویسی MSP430 با کامپایلر Energia را ارائه دادیم که بسیار شبیه به آردوینو است. در این آموزش با کد کامپوزر استودیو کار میکنیم و نحوه استفاده از آن برای برنامه نویسی روی لانچ پد MSP430 را می آموزیم.

این آموزش برای مبتدیان نوشته شده است و هیچ سخت افزاری بجز برد MSP430 و یک رایانه مورد نیاز نیست. در انتهای این آموزش ما یک چشمک زن ال ای دی را با لانچ پد MSP430 راه اندازی میکنیم.

برد توسعه MSP-EXP430G2

محتویات لانچپد MSP430G2

تابلوی رنگ قرمز زرق و برق دار، برد توسعه MSP-EXP430G2 است. این برد می تواند میکروکنترلر های TI را که تحت سری MSP430 قرار می گیرند ، برنامه ریزی کند. هدف اصلی این برد، بارگذاری کد از رایانه به MCU و خواندن داده های سریال از MCU برای اشکال زدایی است. این برد دارای یک دکمه و دو ال ای دی قابل برنامه ریزی در خود است. این برد از زمان راه اندازی خود تکامل زیادی یافته است و آنچه در زیر نشان داده شده است MSP_EXP430G2 Rev1.5 است.

MSP430G2553 از مشخصات بهتری نسبت به سری های دیگر برخوردار است ، همچنین دارای یک ماژول UART است که در هنگام اشکال زدایی با استفاده از کد کامپوزر استودیو  بسیار مفید خواهد بود. از این رو در این سلسله آموزش ها ، ما با استفاده از MSP430G2553 خواهیم توانست کلیه ویژگی های این کیت توسعه را کشف کند.

روشن کردن برد توسعه MSP430G2

قبل از شروع هر کاری TI قبلاً یک نمونه را در میکروکنترلر MSP430G2553 خود قرار داده است، بنابراین به راحتی میتوانیم تغذیه را به برد متصل کنیم و بررسی کنیم آیا کار میکند یا خیر. پس از تغذیه باید مشاهده کنید ال ای دی قرمز و سبز در گوشه سمت چپ پایین تخته به طور متناوب میدرخشند. سپس میتوانید دکمه متصل به P1.3 را فشار دهید تا بررسی کنید که آیا سنسور دمای داخلی MSP2553 کار میکند یا خیر. با قرار دادن انگشت خود روی سنسور باید مشاهده کنید که چراغ قرمز روشن میشود که نشان دهنده افزایش دما است.

Energia IDE یا Code Composer Stduio

Energia یک محیط متن باز است که به ما امکان می دهد تا میکروکنترلرهای TI را به راحتی برنامه ریزی کنیم. هدف اصلی Energia این است که برنامه نویسی لانچ پد را به راحتی برنامه نویسی در Arduino انجام دهید. بنابراین Energia یک نمونه مشابه برای آردوینو است

کد کامپوزر استودیو یک IDE حرفه ای متنوع است که از لحاظ دسترسی به معماری داخلی میکروکنترلر از قابلیت های بیشتری برخوردار است. این نرم افزار دارای عملکرد اشکال زدایی داخلی است که می تواند خطاها را در کد شما بررسی کند و می توانید خط کد خود را به صورت خطی اجرا کنید که به یافتن خطا و بدون هیچگونه دردسری کمک می کند. یادگیری Code Composer Stduio کمی زمان میبرد اما بعد از یادگیری شما به درجه بسیار بالایی از برنامه نویسی لانچ پد ها میرسید.

آموزش نصب کد کامپوزر استودیو

این نرم افزار در وب سایت Texas Instrument به صورت رایگان موجود است. دانلود نرم افزار Code Composer Studio

پس از بارگیری نرم افزار ، آن را نصب کنید.

هنگامی که بر روی نصب کلیک می کنید ، درست مانند سایر نرم افزارها ، از شما خواسته می شود شرایط و ضوابط را تایید کنید و پوشه نصب را انتخاب کنید. پس از آن شما باید برد هایی را انتخاب کنید که می خواهید با آن ها کار  کنید. در اینجاما از MSP430 MCU استفاده می کنیم ، روی گزینه اول کلیک کنید. می توانید بیش از یک فایل پرونده را بارگیری کنید.

حتما ببینید :  مبدل دوگانه چیست؟ آموزش تبدیل جریان مستقیم به متناوب و برعکس

آموزش نصب کد کامپوزر استودیو

پنجره بعدی برای انتخاب دیباگر است. در حالت پیش فرض بگذارید و روی Finish کلیک کنید تا نصب شروع شود.

پس از نصب، پوشه ای برای قرار دادن فایل ها باید انتخاب شود. پوشه مورد نظر خود را انتخاب کنید و روی OK کلیک کنید.

آموزش نصب Code Composer Stduio

اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید.

سپس نصب تمام شده و پنجره زیر را مشاهده خواهید کرد :

نصب موفقیت آمیز کد کامپوزر استودیو

این نرم افزار یک رابط کاربری ساده دارد و در آن می توانید منوی شروع کار را ببینید که در آن می توانید پروژه خود را شروع کنید ، در کنار شروع کار ، یک Resource Explorer وجود دارد. این یکی از ویژگی های جالب این نرم افزار است که در آن می توانید تمام جزئیات یک محصول TI مانند دیتاشیت و … را پیدا کنید. نیازی به یافتن داده های اطلاعاتی در اینترنت نیست ، فقط کافی است روی resource explorer کلیک کرده و بر روی دستگاه مورد نظر خود کلیک کنید. پس از آن می توانید تمام جزئیات مربوط به محصول را مشاهده کنید.

ایجاد پروژه LED چشمک زن در کد کامپوزر استودیو

برای ایجاد پروژه در کد کامپوزر استودیو مراحل زیر را طی کنید.

مرحله 1: – بر روی File -> New -> CCS project کلیک کنید. مطابق شکل زیر

ایجاد پروژه LED چشمک زن در کد کامپوزر استودیو

مرحله 2: سپس ، شما باید برد MSP را که استفاده می کنید انتخاب کنید. من از MSP430G2553 استفاده می کنم ، بنابراین این را مطابق شکل نشان می دهم.

انتخاب برد MSP در کد کامپوزر استودیو

نام مورد نظر خود را به پروژه خود بدهید و بر روی کلیک کنید.

به محض کلیک روی Finish ، یک پنجره جدید با با چند خط کد که قبلاً در آن نوشته شده است باز خواهد شد.

آموزش کامل ایجاد پروژه در Code Composer Studio

آموزش نوشتن کد در CCS

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

#include<msp430g2553.h>

خط بعدی عملکرد اصلی main است. در عملکرد اصلی ، ابتدا تایمر Watchdog را مشاهده خواهید کرد. MSP430 و سایر میکروکنترلرهای مبتنی بر TI از نوع تایمر ویژه ای برخوردار هستند که به تایمر Watchdog معروف است. در کد ما ، از تایمر Watchdog استفاده نخواهیم کرد زیرا بالاتر از سطح مبتدی است. وقتی ما میکروکنترلر را فعال می کنیم ، تایمر watchdog به صورت پیش فرض روشن است بنابراین باید با نوشتن این خط این تایمر را خاموش کنیم.

WDTCTL = WDTPW | WDTHOLD;

اکنون ، باید کدی را بنویسیم تا چراغ برد که به P1.0 وصل شده است چشمک بزند. یک چراغ دیگر وجود دارد که به P1.6 وصل شده است. ما فقط از LED اول استفاده خواهیم کرد. بعد از فهمیدن برنامه چشمک ، می توانید برای فعال سازی و چشمک زدن دو چراغ LED نیز برنامه ای بنویسید.

ابتدا باید این پین ها را اعلام کنیم زیرا در حال استفاده از اینپین ها به عنوان ورودی یا خروجی هستیم.

انواع زیادی از بلوک های حافظه وجود دارد که برای کنترل پورت ها استفاده می شوند. بنابراین ، برای تعریف PORT به عنوان INPUT یا OUTPUT ، از PXDIR  استفاده می شود که در آن X نشان دهنده شماره پورت است. اگر PXDIR 1 باشد ، به عنوان OUTPUT و اگر 0 باشد به عنوان INPUT عمل می کند.

ما باید پین 0 را پیکربندی کنیم ، زیرا چراغ ما به این پین وصل شده است و خروجی است. هر پورت 8 بیت دارد و ما Bit0 را به عنوان HIGH تنظیم میکنیم تا آن را در حالت خروجی قرار دهیم. بنابراین :

P1DIR = 0b00000001;  // در حالت باینری
P1DIR = 0x01;  // در حالت هگزادسیمال

در مرحله بعد ، ما باید پین مخصوص پورت خاص را در ححالت Low یا High تنظیم کنیم. برای این منظور ما باید از رجیستر P1OUT استفاده کنیم ، 1 برای High و 0 برای Low است. در ابتدا ، ما با تنظیم BIT0 در حالت 1 روشنایی LED را روشن می کنیم.

P1OUT=0b00000001; // درحالت باینری
P1OUT = 0x01; //در حالت هگزادسیمال

از آنجا که هیچ تابع تأخیری در MSP430 وجود ندارد ، بنابراین برای تأخیر باید از حلقه for استفاده کنیم.

بنابراین ، در مرحله بعدی ، ما باید یک متغیر ‘i’ را برای تأخیر اعلام کنیم که می تواند به صورت زیر نوشته شود.

Unsigned int i;

ابتدا ، ما PIN0 HIGH را انجام می دهیم و با استفاده از حلقه FOR تأخیر را قرار میدهیم و پس از آن پین را Low می کنیم. در این حالت ما یک برنامه چشمک زن را مینویسیم.

  P1OUT=0X01;   //روشن کردن ال ای دی
        for(i=0;i<20000;i++){   //    تاخیر
    }
        P1OUT=0X00;   //خاموش کردن ال ای دی

        for(i=0;i<20000;i++){  // تاخیر
               }

می توانید این کد را به روش دیگری نیز بنویسید. می توانید از اپراتور BITWISE برای کاهش خطوط کد استفاده کنید. اپراتورهای OR ، AND و XOR در دسترس هستند. می توانید از اپراتور XOR ^ استفاده کنید. عملکرد XOR وقتی که هر دو بیت برابر باشند 1 میشود مثلا هر دو 1 یا هر دو 0 باشند.

P1OUT ^= 0x01;

که به معنی P1OUT = P1OUT xor 0b00000001 است.

بنابراین ، در ابتدا P1OUT را به صورت 0b00000001 تنظیم می کنیم ، اگر عملیات xor را با 0b00000001 انجام دهیم ، خروجی 0b00000000 خواهد بود بدین معنی که LED ما خاموش خواهد بود. پس از این ما حلقه ای را برای تأخیر قرار می دهیم.

while(1)
    {
        P1OUT ^=0X01;   //جابجایی بیت ها

        for(i=0;i<20000;i++){   // تاخیر   
  }
    }

کد کامل

کد کامل پروژه ال ای دی چشمک زن با لانچ پد MSP430 در باکس زیر قرار داده شده است.

#include <msp430g2553.h> 

int main(void) {
    WDTCTL = WDTPW | WDTHOLD;
    P1DIR = 0X01; 
    P1OUT = 0X01; 
    unsigned int i; 
    while(1)
    {
        P1OUT ^=0X01; 
        for(i=0;i<20000;i++){ 
  }
 }
    return 0;
}

بارگذاری کد در MSP430 با Code Composer Studio

پس از نوشتن کد، برانمه ما آماده بارگذاری در MSP430 است. بنابراین ، با استفاده از کابل USB ، برد MSP را به لپ تاپ خود متصل کنید.

اکنون ، ما باید کد خود را کامپایل کنیم، برای این کار بر روی Project -> Build All کلیک کنید. گزارشی از نحوه کامپایل کد در پایین پنجره در قسمت Console مشاهده میشود. در صورتی که همه چیز صحیح باشد باید پیام “Build Finished” را نشان دهد.

زمان بارگذاری برنامه است. روی Run -> Debug کلیک کنید. پس از کلیک بر روی debug ، پنجره مربوط به صرفه جویی در مصرف برق را خواهید دید سپس روی proceed کلیک کنید.

در ادامه در گزینه اشکال زدایی به Run->Resume بروید. اگر گزینه های شما خالی است نیازی به نگرانی نیست ، به View-> Debug بروید و دوباره به Run-> Resume بروید.

به محض دیباگ کردن برنامه ، برنامه شما در MSP بارگذاری می شود. یک روش میانبر این است که به راحتی دکمه play / pause روی صفحه را کلیک کنید. مانند تصویر زیر :

بارگذاری کد در MSP430 با Code Composer Studio

اگر چراغ چشمک نمی زند ، برد را Reset کنید یا USB را دوباره وصل کنید.

به این ترتیب ما یک پروژه ال ای دی چشمک زن را با لانچ پد MSP430  و کامپایلر Code Composer Studio راه اندازی کردیم.

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

محمد رحیمی

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

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

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

دکمه بازگشت به بالا
بستن