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

آموزش میکروکنترلرهای LPC1768 جلسه اول: معرفی ARM و هسته Cortex-M3

پردازنده های ARM بیشتر دارای هسته 32 بیتی میباشند (البته هسته 64 بیتی نیز دارن و در آینده خدا میدونه تا چند بیتی برن و شایدم تکنولوژی کلا متحول شد 🙂 ) و از معماری RISC بهره میرند.

معرفی ARM و هسته Cortex-M3

تاریخچه ARM

ARM نوعی از معماری پردازنده‌های کامپیوتری است که بر طبق طراحی RISC CPU و توسط کمپانی بریتانیایی ARM Holding طراحی شده است. معماری ARM که دستورالعمل‌های 32 بیتی را پردازش می‌کند از دهه 1980 تا به امروز در حال توسعه است.ARM مخفف Advanced RISC Machine است و از آنجایی که این معماری براساس طراحی RISC بنا شده.

نسخه 64 بیتی پردازنده های ARM

در سال 2011 نسل جدید ARMv8 رسما معرفی شد و پشتیبانی از معماری 64 بیتی به آن اضافه گردید. در ARMv8 دستورات 32 بیتی برروی سیستم‌عامل 64 بیتی قابل اجرا هستند و در آن سیستم‌عامل‌های 32 بیتی نیز از طریق مجازی سازی 64 بیتی اجرا می‌شوند.

شرکت ARM خود تولیدکننده پردازنده نیست

جالب است بدانید که شرکت ARM Holding خود تولیدکننده پردازنده نیست و در عوض گواهی استفاده از معماری ARM را به دیگر تولیدکنندگان نیمه هادی می‌فروشد. کمپانی‌ها نیز به راحتی تراشه‌های خود را براساس معماری ARM تولید می‌کنند.

شرکت هایی که از هسته ARM برای تولید چیپ ها استفاده میکنند

کمپانی‌هایی که در حال حاضر گواهی استفاده از ARM را دارند عبارتند از: AMD, آلکاتل, اپل, AppliedMicro, Atmel, Broadcom, Cirrus Logic, CSR plc, Digital Equipment Corporation, Ember, Energy Micro, Freescale, فوجیتسو, Fuzhou Rockchip, هواوی, اینتل توسط شرکت‌های زیر شاخه, ال جی, Marvell Technology Group, Microsemi, مایکروسافت, NEC, نینتندو, Nuvoton, انویدیا, NXP (formerly Philips Semiconductor), Oki, ON Semiconductor, پاناسونیک, کوالکام, Renesas, Research In Motion, سامسونگ, شارپ, Silicon Labs, سونی, اریکسون, STMicroelectronics, Symbios Logic, Texas Instruments, توشیبا, یاماها  و ZiiLABS

مطلب پیشنهادی:  پروگرم کردن میکروکنترلر STM32F103C8 با استفاده از Keil uVision و STM32CubeMX

ویژگی های اصلی پردازنده های ARM

  • قدرت پردازشی بالا
  • مصرف توان پایین
  • ساده بودن معماری و قابلیت پیاده سازی با ترانزیستور های کمتر
  • ابعاد کوچک
  • قابلیت اطمینان بالا
  • قیمت مناسب

میکروکنترلر با هسته ARM

پردازنده ها توسط شرکت ARM طراحی می شوند و لایسنس آن در اختیار شرکت های تولید کننده چیپ قرار میدهد.شرکت های تولید کننده هسته را از ARM دریافت و امکانات جانبی نظر حافظه های RAM EEPROM FLASH ، تایمر ، SPI , I2S , I2C, UART,USART,USB,RTC,DMA و غیره به هسته اضافه و میکروکنترلر طراحی میکنند.

از شرکت های تولید کننده که صد ها شرکت هستند در ایران بیشتر ST Microelectronic ,ATMEL,XNP و تعدادی محدودی از میکروکنترلر های TI موجود هستند.بنظر خودم که TI از همه بهتر است و بقیه هم عالی هستن 🙂  با میکرو دیزاینر الکترونیک همراه باشید تا آموزش را ادامه بدیم خب بریم دنبال میکروکنترلر و هسته ای که میخواهیم با آن کار کنیم.

ما در این آموزش ها از میکروکنترلر LPC1768 شرکت NXP استفاده خواهیم کرد.که البته بلطف CMSIS با نوشتن برنامه با توابع CMSIS برای یک نوع میکروکنترلر با تغییرات جزئی میتوان برای میکروکنترلر های شرکت های دیگر نیز استفاده کرد. این کار باعث پایین آمدن هزینه های نرم افزار میشود!

میکروکنترلرهای ARM بر مبنای هسته های مختلف عرضه می شوند.هسته های مختلف پردازنده های ARM نظیر ARM7,ARM9,ARM11,Cortex-MO,Cortex-M3,Cortex-R4,Cortex-A5,Cortex-A8,Cortex-A9 و…که ما در این آموزش ها از میکروکنتری استفاده میکنیم که دارای هسته پردازشی Cortex-M3 میباشد. البته با همه این هسته ها میکروکنترلر تولید نمیکنند و بعضی از آنها مخصوص پردازنده های گوشی ها و… میباشد.

مطلب پیشنهادی:  ارتباط RS-485 بین STM32 و بورد Arduino Uno

هسته Cortex-M3

یکی از معروف ترنی هسته های ARM برای پیاده سازی میکروکنترلرها هسته ARM7 میباشد که اکثر تولید کنندگان از این هسته استفاده کردن و یا میکنن. هسته Cortex-M3 جایگزین قدرتمند برای معماری ARM7 طراحی شده است که در حال حاضر بدلیل مصرف پایین و سرعت پردازشی بالا DMPIS/MHZ]  1.25] نسبت به 0.95 [DMPIS/MHZ] در هسته ARM در حال استفاده روزافزون در ادوات میباشد.

  • سرعت پردازشی بالا
  • معماری هازوارد با قابلیت پیش بینی دستورات پرش
  • استفاده از دستورات Thumb2

منابع : ویکی پدیا ، زومیت ، وبسایت ARM

ما از میکروکنترلر LPC1768 استفاده خواهیم کرد که دارای هسته  Cortex-M3  میباشد این محصول تولید شرکت NXP است که در ایران هم به وفور پیدا می شود. خب در جلسه بعدی می‌ریم سراغ اصل داستان و برنامه نویسی این میکروکنترلرها.

اگر این نوشته‌ برایتان مفید بود لطفا کامنت بنویسید.

مطالعه دیگر جلسات این آموزش                    جلسه بعدی >>

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

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

5 دیدگاه

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

  2. ممنون به خاطر آموزش های خوبتون.

  3. مهرداد صابری

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

  4. واقعا بهترین وبسایت فارسی در این زمینه
    خیلی ممنون از زحماتتون

  5. خیلی عالیه لطفا ادامه بدید.