به نام خدا

سلام خدمت دوستان عزیز و هموطنان گرامی

امروز دنبال این میگشتم که چظور میکرو LPC1768 رو با کابل Ethernet به اینترنت وصل کنم. تا اینکه به این صفحه رسیدم. (این سایت برای کشور عزیزمون تحریمه، باید با فیلتر شکن بازش کنید). اینجا بود که تازه با سایت mbed آشنا شدم!

اول دیدم ابتدای کد نوشته #include "mbed.h" خوب بنابراین دنبال کتابخانه mbed.h گشتم. که به این صفحه رسیدم. دیدم یه عالم کتابخونه برای این میکرو نوشتن که خیلی هم کیفیت برنامه نویسی خوبی دارن و با زبان C++ میشه ازش استفاده کرد.

با خوشحالی کتابخونه رو دانلود کردم و رختم توی Keil ولی جواب نگرفتم. هی ارور میداد که فلان چیز تعریف نشده undefine. گفتم برم یه سورس ازش پیدا کنم و از اون استفاده کنم. که فهمیدم سایت mbed خودش کامپایلر آنلاین داره و بدون دردسر میشه از اونجا همه چیز کامپایل کرد (با کتاب خونه های خودش) این واقعا عالی بود. (برای استفاده از کامپایلر آنلاین باید ثبت نام کنید)

برید ثبت نام کنید و با کمک صفحات زیر یه برنامه بسازید

ساخت یک برنامه 

شروع با برد LPC1768

 

مثلا من برنامه زیر رو نوشتم! (البته من از همون لینک اولی توی قسمت کد گزینه زرد که نوشه import program رو زدم) فقط رفتم به جای LED1 نوشتم p26

#include "mbed.h"
DigitalOut myled(p26);
int main() {
    while(1) {
        myled = 1;
        wait(0.2);
        myled = 0;
        wait(0.2);
    }
}
چون برد ما با برد اونا متفاوته! الان LED برد آموزشی شرکت ECA به پایه p2.0 وصله تا P2.7 یعنی هشت تا LED. که پایه P2.0 میشه 26 البته خودمم هنوز نفهمیدم چرا. توی فایل PinNames.h اینجوری نوشته بود.
    // mbed DIP Pin Names
      , p5 = P0_9 
      , p6 = P0_8
      , p7 = P0_7
      , p8 = P0_6
      , p9 = P0_0
     , p10 = P0_1
      , p11 = P0_18
      , p12 = P0_17
     , p13 = P0_15
      , p14 = P0_16
      , p15 = P0_23
      , p16 = P0_24
      , p17 = P0_25
      , p18 = P0_26
      , p19 = P1_30
      , p20 = P1_31
      , p21 = P2_5
      , p22 = P2_4
      , p23 = P2_3
      , p24 = P2_2
      , p25 = P2_1
      , p26 = P2_0
      , p27 = P0_11
      , p28 = P0_10
      , p29 = P0_5
      , p30 = P0_4
حالا باید کد رو کامپایل کنید!
برای اینکار توی همون کامپایلر آنلاین یه گزینه داره نوشته Compile اونو که بزنید کامپایل میکنه و یک فایل باینری بهتون میده! حالا شما باید فایل باینری رو به Hex تبدیل کنید. چون برنامه ای برای پروگرم کردن فایل Bin نداریم. ولی فایل Hex رو میتونیمبا Flash Magic پروگرم کنید (با استفاده از UART)
خوب برای تبدیل فایل باینری به هگز میتونید اینجا رو ببینید. و برای دانلودش میتونید برید اینجا و دانلود کنید.
بعد از دانلود اونو از فایل zip خارج کنید و با cmd برید به اون پوشه و کد زیر رو تایپ کنید!
srec_cat.exe BinaryFile.bin -Binary -o HexFile.hex -Intel
توجه داشته باشید که اسم فایلی که با mbed کامپایل کردید رو باید به جای BinaryFile.bin قرار بدید و فایل خروجی شما اسمش میشه HexFile.hex 
البته برای راحتی بیشتر میتونید این خط بالا رو توی یه تکست (.txt) کپی کنید و اسمش رو بزارید compile.batکه هروقت روش کلیک کنید خودش این خط کد رو اجرا کنه!
یعنی میتونید فایل زیر رو به پوشه ای که دانلود کردید (برای تبدیل باینری به هگز) اضافه کنید.
خوب حالا باید با برنامه Flash Magic فایل هگز رو کامپایل کنید! انشالله که برنامه به خوبی اجرا بشه.
فعلا
یا علی مدد