نمایش/عدم نمایش سایدبار
رفتن به بالای صفحه
آزادی حجاز از دست نااهلان
مهدی دمیرچیلو

آموزش آرم LPC1768 جلسه ۰ انتخاب میکروکنترلر

به نام خدا : در این سری از مطالب آموزش آرم انشاءالله قراره آموزش lpc سری LPC176x/5x رو بدیم و مبنای آموزش ما فایل LPC176x/5x user manual نسخه ۳٫۱ هستش که در زیر برا دانلود قرار دادمش، و مبنای میکروکنترلر ما برای انجام پروژه ها و… میکروکنترلر lpc1768 هستش؛ خیلی وقته میخوام آموزش این سری رو شروع کنم ولی خب هر دفه کار پیش میومد O_o آموزش این سری از میکروکنترلر رو قبلا یکی از دوستان شروع کرده بود ولی خب متاسفانه نیمه کاره رها کرد و مطالبش رو ادامه نداد، انشاءالله با حمایت شما این سری مطالب ادامه دار خواهد بود.( آموزش آرم LPC1768 جلسه ۰ انتخاب میکروکنترلر )
آموزش آرم LPC1768 جلسه 0 انتخاب میکروکنترلر

آموزش آرم LPC1768 جلسه ۰ انتخاب میکروکنترلر

 
برای دیدن انواه core های arm به لینک مقابل از سایت خود آرم برید : ARM PROCESSORS
میکروکنترلر های آرم شرکت nxp به سه دسته زیر تقسیم میشن(حالا دسته بندی های دیگه ای و میکرو های دیگه ای هم هستش یا نیستش من کاری ندارم و خبر هم ندارم ^_^) :

که ما با سری ARM Cortex-M Cores کار میکنیم و این سری هم شامل مدل های زیر هستش :

  • LPC Cortex-M0+/M0
  • LPC Cortex-M3
  • LPC Cortex-M4

آموزش میکروکنترلر های شرکت nxp
مدل M0 حداکثر فرکانسش۵۰ میگ، مدل M3 تا ۱۸۰ میگ و مدل M4 تا ۲۰۴میگ هستش حداکثر فرکانسشون؛ ما با مدل LPC Cortex-M3 کار میکنیم، و این مدل هم شامل سری های زیر هستش :

مقایسه انواع میکروکنترلر سری +LPC Cortex M0/M0 رو در عکس زیر مشاهده میکنید، انشاءالله بعد اتمام سری LPC176x/5x میریم سراغ این سری.
LPC Cortex M0
 
مقایسه انواع میکروکنترلر سری LPC Cortex M3 رو در عکس زیر مشاهده میکنید( در این سری مطالب رو این سری کار میکنیم.)
LPC Cortex M3
 
مقایسه انواع میکروکنترلر سری LPC Cortex M4 رو در عکس زیر مشاهده میکنید :
LPC Cortex M4
 
خب همون طور که در عکس های مقایسه کننده بالا رو دیدید، سری LPC Cortex M3 یه مدل میانه هستش که ما انتخابش کردیم و در ضمن منابعش هم بیشتره و خب برا شروع بهتره، ما با سری LPC176x/5x کار میکنیم؛ این سری هم خودش شامل مدل های زیر هستش :

  1. LPC1751FBD80
  2. LPC1752FBD80
  3. LPC1754FBD80
  4. LPC1756FBD80
  5. LPC1758FBD80
  6. LPC1759FBD80
  7. LPC1763FBD100
  8. LPC1764FBD100
  9. LPC1765FBD100
  10. LPC1765FET100
  11. LPC1766FBD100
  12. LPC1767FBD100
  13. LPC1768FBD100
  14. LPC1768FET100
  15. LPC1768UK
  16. LPC1769FBD100
  17. LPC1774FBD144
  18. LPC1774FBD208
  19. LPC1776FBD208
  20. LPC1776FET180
  21. LPC1777FBD208
  22. LPC1778FBD144
  23. LPC1778FBD208
  24. LPC1778FET180
  25. LPC1778FET208
  26. LPC1785FBD208
  27. LPC1786FBD208
  28. LPC1787FBD208
  29. LPC1788FBD144
  30. LPC1788FBD208
  31. LPC1788FET180
  32. LPC1788FET208

برا مقایسه میکرو های فوق و دیدن امکانات هر کدوم میتونید فایل زیر رو دانلود کنید یا این که به لینک زیر برید :

LPC1700 Series: Scalable Mainstream Microcontrollers (MCUs) based on ARM® Cortex®-M3 Cores

ما با مدل LPC1768 کار میکنیم و پروژه ها رو میبندیم(همون طور که در بالا میبینید از این مدل سه تا هستش که من بررسی کردم لینک بالا رو فرقی بینشون ندیدم، حالا فرقشون چیه اگه کسی میدونه بگه)
توجه ۱ : بسته به میکرو مورد نیازتون و میزان امکانات جانبی میکرو مد نظرتون میتونید بهترین میکرو lpc رو برای کارتون انتخاب کنید.
توجه ۲ : این که حالا ما بر مبنای lp1768 آموزش میدیم دلیل نمیشه که با مدل های دیگه نمیتونید شما کار کنید، این مدل با مدل های دیگه سری LPC176x/5x تفاوت زیادی ندارد – بیشتر در امکانات جانبی هستش و بعضا در چند ریجستر.
 

امکانات میکروکنترلر LPC1768

در زیر امکانات میکروکنترلر lpc1768 رو میبینید که در هر مطلب یه مورد رو آموزش میدم، مقدار فرکانس که حداکثر ۱۰۰ میگ هستش، حافظه فلش(جایی که کدهای پروژه قرار میگیره) مقدارش ۵۱۲ کیلو بایت هستش، مقدار رم هم ۶۴ کیلو بایت(جایی که متغییر ها قرار میگیرن و …)، حافظه ایپرام هم نداریم، تعداد ورودی/خروجی ها هم ۷۰ تا هستش(GPIO)، بقیه موارد هم در جای خودشون توضیح میدم.

  • Clock speed [max] : 100 MHz
  • DMIPS : 125
  • Flash : ۵۱۲ kB
  • RAM : 64 kB
  • EEPROM : –
  • GPIO : 70
  • Ethernet : 1
  • USB : 1, FS(speed), host/device(type)
  • CAN : 2
  • UART : 4
  • I²C : 3
  • SPI : 1
  • I²S : 1
  • ADC channels : 8, ۱۲ bits
  • DAC : 10 bits
  • Timers : 4, ۳۲ bits
  • RTC : 1
  • PWM : 6
  • QEI : 1
  • Temperature range : -۴۰ °C to +85 °C
  • Supply voltage : ۲٫۴ – ۳٫۶ Volt

 

مقایسه LPC1788 با LPC2478

این فیلم زیر رو هم میتونید ببینید جالبه، از خود سایت NXP برداشتم، تفاوت سرعت و تاثیر مقدار فرکانس رو ببینید :
http://www.aparat.com/v/hdkAz

 

مطلب جلسه آینده
خب همون طور که گفتم طبق اون فایل شرکت nxp من مطالب رو تهیه میکنم لذا جلسه بعد کار با پایه های میکروکنترلر و انتخاب نقش اصلی برای اونا !!! موضوع مطلب خواهد بود ( عمرا کسی فهمیده باشه موضوع جلسه بعد چیه laugh - البته چیز خاصی نیست، ساده هستش ولی خب یکم شاید با دیدن مطلب جا بخورید، رو مخی هستش یکم ولی خب سادس و هیچی نداره!!! )
 
خب امیدوارم از این مطلب خوشتون اومده باشه و حمایت کنید برا ادامه این سری مطالب چون من جان داش تنبلیم میاد این مطالب رو تهیه کنم و بزارم تو سایت چون یه عمل زمان گیر هستش و منم که حساسسسسس laugh
بیش از این مزاحم نمیشم، تا مطلب بعد یا علی

گروه پرسش و پاسخ الکترونیکی در سروش
مهدی دمیرچیلو امیدوارم مطالب ناچیز این سایت مفید باشه براتون؛ به امید روزی که دانسته هامونو به اشتراک بزاریم، حالا پولی یا رایگانش زیاد مهم نی؛ بعضی ها فک میکنن چیزی که بلدن، اگه با دیگران به اشتراک بزارن ... !
ارسال دیدگاه
33

1) نظرات غیر فارسی به صورت خودکار حذف میشوند ( حداقل 5 حرف فارسی وارد کنید ).

2) به موارد درخواست پروژه/کد آماده و سوالاتی که بلد نباشم پاسخ داده نمیشه.

3) برای گزاشتن کدهاتون از این سایت استفاده کنید ( طبیعتا لینک کدتون رو باید برای من بفرستید! ) : debian

4) پسورد فایل های سایت : www.dmf313.ir

  1. Avatar

    مهمان

    ارسلان

    سلام آقا مهدی وخداقوت
    من تازه شروع کردم کار با میکرو lpc1768 رو وقتی میخوام یه پروژه تعریف کنم بعد انتخاب نوع میکروم یه پنجره بازمیشه Manage run-time enviroment که نمیدونم چیه قضیش!
    بعدشم که میخوام کدمو کامپایل کنم ارور میده که
    Can not open source input file “core_cm3.h

    چی کارش کنم اینو؟

  2. Avatar

    مهمان

    حسین

    با تشکر از راهنمایی های شما
    کدهای LPC1549 رو داخل سایت شرکت NXP پیدا کردم.
    کدهای میکروکنترلر ARM LPC1549 رو از سایت شرکت NXP گرفتم.کدهای تمام میکروکنترلرهای این شرکت رو داره. البته باید قندشکن داشته باشیم. چون سایتش ایران رو تحریم کرده.
    این هم آدرس سایت NXP بخش کدهای میکروکنترلرهای مختلف ARM:

    https://www.nxp.com/support/developer-resources/software-development-tools/lpc-developer-resources-/lpcopen-libraries-and-examples:LPC-OPEN-LIBRARIES

  3. Avatar

    مهمان

    حسین

    واحد خاصی رو داخل LPC15xx نمی‌خوام فعال کنم. برای شروع، فقط می‌خوام یک پایه رو خروجی کنم و مقدارش رو 1 بدم. این کد رو می‌زنم:
    int main(void){
    (LPC_GPIO0->FIODIR=(1<FIOPIN=(1<FIOPIN=(0<<0);
    Delay(800000);
    }
    اما تا کد LPC_GPIO رو می‌نویسم روی کد LPC_GPIO خطا می‌ده و چنین کلمه‌ای رو نمی‌شناسه. چه برسه به ادامه ماجرا و FIODIR و … .
    توی دیتاشیت هم دیدم. پورت 0 پایه 0 در حالت عادی، ورودی، خروجی هست.
    از روی دیتاشیت چطور میشه کدنویسی سری LPC15xx رو یاد گرفت؟ کدهای میکرو رو که داخل دیتاشیت نمی‌گذارند. help

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      هر رجیستر در واقع یه آدرس هستش – شما آدرس ( رجیستر ) های فوق رو مقدار دهی میکنی و …
      هر واحدی هم رجیستر های خودشو داره.

  4. Avatar

    مهمان

    حسین

    سلام. من یه میکرو ARM LPC1549 دارم. کدهای LPC15xx که گیر نمیاد. کدهای LPC1768 رو می‌زنم اما نمی‌شناسه!!! cry
    آیا کدنویسی سری LPC15xx با LPC1768 فرق داره؟
    اگه فرق داره، آموزش LPC15xx رو از کجا می‌تونم تهیه کنم؟

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام – این دو دو میکرو جدا هستند – دلیلی نداره که کد های یکی تو اون یکی اجرا بشه – قبلش بررسی کنید دیتاشیت این دو رو ببین اون واحد مد نظر شما اصلا در هر دو میکرو فوق وجود داره یا نه، بعد ببینید رجیسترهاش یکسانه یا نه – و اگه نبود اصلاح کنید.

      دیتاشیت میکرو فوق که هستش good

  5. Avatar

    مهمان

    علیرضا

    سلام.ممنون از آموزش های شما
    jlink کدوم ورژنش خوبه؟ورژن های 9 و 9.4 هست.ورژن 8 eca هم هست.کویر الکترونیک هم هس.حالا کدومش بهتره؟

    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام – با ورژنای جدید کار نکردم نمیدونم مشکل داره یا نه – طبیعتا نباید موردی داشته باشه

  6. Avatar

    مهمان

    ناشناس

    سلام مهندس خسته نباشی
    از زحمت هایی که کشیدی تشکر میکنم
    فقط اموزش تنظیم کلاک میکرو رو ندادی که !!!
    الان که این برنامه ها رو پروگرام کنیم معلومه که با چه فرکانسی داره کار میکنه ؟؟؟
    ضمنا من تو تنظیم فرکانس میکرو یه مشکل کوچیک داشتم اگه لطف کنید توضیح بدید
    ببین من فرکانس رو بر اساس کدهایی که در یک کتاب بود روی 96 تنظیم کردم اما به نظر میاد فرکانس پردازنده
    روی مقادیر کمتری تنظیم شده
    https://www.eca.ir/forums/thread61780.html#post678948
    پست شماره 5

  7. Avatar

    مهمان

    mohamad

    واقعا خسته نباشید.
    یه سوال داشتم بنده هدر بورد lpc1768 eca و پروگرمر j-link خریدم .
    الان مشکلی که دارم گفتید f8 پروگرم میکنید. الان هر چی f8 میزنم هیچ اتفاقی نمی افته !!!!
    فیوز بیتی چیزی باید تغییر بدم رو هدر بورد ؟! wacko

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام-نه-باید برید تو تنظیمات کامپایلر تا جایی که یادمه – پروگرامرو بهش بشناسونی و بعد….
      تا جایی که یادمه

  8. Avatar

    مهمان

    حمید

    سلام. من هیچی از میکرو بلد نیستم و خیلی علاقه دارم که یاد بگیرم. ا ز ۰ تا ۱۰۰
    لطفا راهنمایی کنید good

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      والا میکرو مدلاش زیاده ولی یه avr داریم یه arm داریم – که اولی ضعیف تر و دومی قوی تره – این که اول از کدوم شروع کنیم خودش داستانیه – و آرم هم مدلای مختلفی داره که بازم این که با کدوم مدلش کار کنیم …، این دو تا رو یه تحقیقی کن – بعد آموزششو پیدا میکنی تو نت.

  9. Avatar

    مهمان

    سمانه

    سلام
    ببخشید وقتی میخوام از طریق پورت سریال lpc1768 را با نرم افزار flash majic پروگرام کنم پایه ها را نمی دونم دقیقا چطوری به مبدل سریال متصل کنم؟
    لطفا راهنمایی کنید

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      والا با این من کار نکردم – من با پروگرامر جیلینک و کامپایلر keil پروگرام میکنم میکرو رو – یه f7 میزنم کد کامپایل میشه و یه f8 میزنم و کد پروگرام میشه تو میکرو ( تو محیط کیل )

  10. Avatar

    مهمان

    mohammad javad

    سلام اقا مهدی به نظر شما اگر یکی بخواد هم سریlpc1768 رو یاد بگیره و هم سری stm32از کدوم یکی شروع کنه بهتره کودوم یکی برنامه نویسیش سخت تره ایا خودتون stm32 رو به صورت خصوصی هم اموزش میدین
    اصلا این کار خوبیه که بریم هر دو سری رو یاد بگیریم sorry

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      به نظر من با هیچ کدوم کار نکن – برو یه پروژه ای برا خودت تعریف کن – بعد ببین چی نیاز داره – شاید همون Avr کافی باشه.

  11. Avatar

    مهمان

    arian

    سلام آقا من میخواستم arm و شروع کنم ولی یه عده میگن stm بهتره و یه عده میگن lpc می خوام نظر شما رو بدونم که برا شروع کدومو پیشنهاد میکنید؟

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام – به نظر من از کسی نپرس! – برو خودت تحقیق کن – مطمئن باش که ۹۹% اونی که کار کردن رو میگن بهتره.

      • Avatar

        مهمان

        mohammad javad

        سلام برادر
        من هم همین مشکل رو دارم موندم سر دوراهی کدوم میکرو بهتره lpc یاstm لطفا یه راهنمایی بکنین rtfm مطمعن باشین به دل نمیگیرم اگه به یه میکرو هم توهین کنین laugh
        راستی اموزش خصوصی هم دارین اگه بخوام stm رو یاد بگیرم خودتون میتونین بهم یاد بدین چون من فقط زبون خودتون رو میفهمم mail

        • مهدی دمرچیلو

          نویسنده این مطلب

          مهدی دمرچیلو

          نمیدونم برو تحقیق کن – بررسی نکردم خودم که کدوم بهتره.

  12. Avatar

    مهمان

    نوید

    سلام
    ممنون از اموزش های رایگانتون من تازه میخوام arm رو شروع کنم اما هر چی گشتم تو سایت شما و بقیه ی سایت های اموزشی اینگلیسی و فارسی دیدم ببه جای اینکه مثلا مثل avr از یه میکروکنترلر استفاده بشه از یه بردی مثل اردوینو استفاده میشه که یه میکرونترلر داخلشه ولی توی فروشگاه های اینترنتی مثل eca خود میکروکنترلر به صورت تکی هستش حالا گیج شدم یعنی باید حتما همیشه با یه برد از ارم استفاده کرد چون من میتونم قطعات smdخیلی ریز رو مثل armلحیم کنم و یه برد بسازم اما دوست ندارم از یه برد اماده استفاده منم حالا سوالم اینه که این LPC1768 دقیقا چیه ؟
    یه چیزیه مثل اردوینو یا اون برد فقط یه رابط مبدله (هخه روش کریستال و یه سری قطعالت هست)
    خلاصه من میخوام از یه ارم مثل avr استفاده کنم نه اردوینو میشه توضیح بدید اینجا چرا arm اینطوری مثل اردوینو شده ؟
    من خیلی گیج شدم لطفا هر چی میدونید دریغ نکنید smile
    ممنون

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      چیزی که هستش میکرو های آرم به صورت smd هستن ( با استثنا ها کاری ندارم ) ولی میکرو های Avr در پکیج های dip و smd هستن لذا اگه توان/حوصله و … ندارید برا میکرو های آرم میتونید برد آمادشو بخرید وگرنه خودتون هم میتونید بردشو بزنید ولی چون smd هستن حتما باید یه برد تبدیلی براشون درست کنید برا بحث آموزش آرم تون.

  13. Avatar

    مهمان

    mohammadjavad

    سلام برادر راستش من قبلا میخواستم کار با میکرو avr رو یاد بگیرم اما موقعیتش پیش نیومد اما الان میخوام با امید خدا با خرید یه سری لوازم کار با میکرو arm سری LPC1768 رو یاد بگیرم بغیر هدربرد – برد راه انداز LPC1768 Cortex-M3 به چه لوازم دیگری (متل برد برد ، مقومت ، و….) نیاز دام چون من شهرستان که چه عرض کنم اینجا مثل بیابون هستش البته از نظر لوازم کار با میکرو مغازه دار هنوز نمیفهمه میکرو چیه دلش هم خوشه لوازم الکترونیکی باز کرده
    لطفا مثل پست لوازم کار با میکرو AVR لوازم مورد نیاز کار با ARM سری LPC1768 رو هم بیان کنید تا سفارش بدم
    با تشکر

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام – چشم مینویسم ولی قبلش اینو بگم یه پروگرامر jlink و حداقل ۳ تا برد برد – ۲ بسته سیم برد برد. – مطلبش رو سعی میکنم بنویسم ولی خب رو من حساب نکن – معلوم نیست کی بنویسم

    • Avatar

      مهمان

      مجید

      سلام
      ممنون از تمام زحمات شما .
      بزرگواری شما قابل تحسین هستش انشاالله همه بتونند شما را الگوی خودشون قرار بدند .

  14. Avatar

    مهمان

    جهاد

    سلام آقا مهدی ولا من اینترم درس میکرو کنترلر ارم دارم
    استاد هم که میدونید خودش نمیدونه چی داره میگه
    اومدم اینجا یه چیزی یادبگیرم
    اما متاسفانه نوع اموزشی که شما گذاشتید مثل اردینو نیست و خط به خط درمورد کد ها توضیح داده نمیشه
    من الان گیج و گنگم
    یه جا از رجستر استفاده میکنن تو کد یه جا هم یه کد طولانی
    اصلا چی به چیه
    لطفا دریابید مارو
    شدم اینهو روحانی خودم نمیدونم کجای کارم smile

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      جاهایی که مشکل داری رو بگو تا ببینم کجا ها کم گفتم یا بد گفتم یا منبع منابس معرفی نکردم و… تا اصلاح کنم.

  15. Avatar

    نویسنده سایت

    محمدرضا اسلامی

    سلام بر آقا مهدی…
    ترقیبم کردی که lpc1768 رو از تو کارتونش در بیارم.

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      خسته نباشی laugh
      ولی همون بشین رزبری رو کار کنی بهتر نیست؟
      من خودم از بس از این شاخه به اون شاخه پریدم خسته شدم cry

  16. Avatar

    مهمان

    مهران غلامی

    سلام خداقوت داداش مهدی عزیز
    امید دارم که اموزش خوبی رو شروع کردید
    در توضیحات بسیار خوبی که دادید کاشکی میگفتید که کارها و پروژه هایی که میشه با این آرم انجام داد چی هست خیلی خوب میشد
    به هر حال بنده مشتاق یادگیری هستم و اگر کاربردی باشه تهیه میکنم و کار میکنم
    منتظر قسمت بعدی شما و پربار تر هستم
    موفق و پیروز باشی داداش گل

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      فرکانس ماکس 100 میگ – خب خودت حساب کن که چه کارهایی میشه باهاش کرد.

      • Avatar

        مهمان

        ایمان

        سلام میشه یه پروژه راه اندازی وای فای با lpc 1768 بزاری برامون ممنون میشم