٨۸۵۴۳۵۶۱-٠٢١

میکروکنترلر ARM چیست؟ 

این قطعات پردازنده ای هستند ، از نوع 32 بیتی و دارای معماری RISC هستند و سرعت نسبتا بالایی هم دارند (کلاک از 300 تا 2000 مگاهرتز)و مجهز به برخی امکانات داخلی (adc و dac و تایمر وکانتر و pwm و rtc و i2c و spi و dmaو ...)وحافظه کش هستند . قابلیت ها و باس های استانداردی که برای این پروسسورها در نظر گرفته شده به همراه سرعت بالا ، حافظه کش مناسب ، مقایسه گرهای داخلی ، تایمرهای 16 بیتی برای پیاده سازی RTC و ... ، باعث شده که عملکرد این تراشه ها نسبت به انواع دیگر پروسسورهای هم تراز ، دارای کیفیت و قدرت بالاتری باشه .

چرا قبلا از این پردازنده استفاده نمیشده ، ایا به تازگی وارد بازار شدند؟


این پردازنده قبلا توسط شرکت arm تولید میشده که این شرکت هم به قیمت بالا این پردازنده رو به مشتریان خاص میفروخته ، اما از اوایل سال 2002 به بعد این شرکت مجوز ساخت این پردازنده رو به شرکتی های همچون ATMEL و
Luminary Micro و شركت philips و چند تا شرکت دیگه میده .
شرکت های فوق با اضافه کردن امکاناتی مثل انواع مبدل ها (دیجتال به انالوگ و ....)، انواع رابط ها (بلوتوث ، usb )و... این پردازنده رو به یک پردازنده عمومی تبدیل میکنند و اون رو به بازار جهانی عرضه میکنن.


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


برای برنامه نویسی این پردازنده از زبان های c و بیسیک و اسمبلی استفاده میشه .
کلیه کامپایلر های زبان اسمبلی برای این پردازنده رایگان هستند و شما میتونید از لینک های زیر اونا رو دانلود کنید:


http://www.spjsystems.com/traininga.htm
http://www.heyrick.co.uk/assembler
http://www.riscworld.co


برای زبان های c مثل خود c و c++ کامپایلر های متعددی ارائه شده که کی از این کامپایلر ها کامپایلر keil uvision هست که در اون میشه به زبان های اسمبلی و c و c++ برنامه نوشت .
نسخه رایگان این کامپایلر در لینک زیر موجود است:


http://www.keil.com/download/docs/324.asp


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


ایا این پردازنده cpu هستند یا مانند میکرو کنترلر ها میباشند ، یعنی در در داخل خود ram و i/o و.. دارند یا نه ما خودمان باید این امکانات را بهش اضافه کنیم ؟

این پردازنده در نمونه های گوناگونی ارایه شده است مثلا مدل LPC2138 دارای 512 کیلو حافظه فلش ، 32 کیلو حافظه رم ، مبدل آنالوگ به دیجیتال ، مبدل دیجیتال به آنالوگ و ... میباشد
یا مدل at76c551 ساخت شرکت اتمل دارای امکانتی همچون بلوتوث ، ارتباط usb و... هست
یا مدل arm7tdmi فقط یک پردازنده است که روی خود فقط خطوط i/o دارد و باید برای ان مانند یک میکرو پروسوسر واحد های rom و ram و کانتر و... تعبیه کرد
این پردازنده در مدل های وسیع ساخته میشوند (بسیار گسترده تر از avr و pic و.. ) و دست شما برای انتخاب باز است برای اطلاعات بیشتر در مورد هر پردازنده به شرکت سازنده مراجعه کنید :


http://www.us.design-reuse.com/articles/...13742.html
http://www.arm.com/products/CPUs
http://www.atmel.com

ایا برای شبیه سازی این میکرو پروسسور ها نرم افزاری وجود دارد ، قیمت انها در چه حدی است ؟


خود نرم افزار kiel دارای قسمت شبیه ساز میباشد ، به علاوه نرم افزار قدرتمند پروتوس نیز از این پروسسور ها پشتیبانی میکند

قیمت این پروسسور ها بسته به امکانات از 5 تا 500 هزار تومان متغییر است،
مثلا قیمت lpc2300 نه هزار تومان است ، این پروسسور دارای امکانات زیر میباشد:
فرکانس کاری 72 مگاهرتز
512 کیلو حافظه فلش قابل برنامه ریزی
8 کیلو sram برای cpu و 16 کیلو برای شبکه و 8 کیلو هم برای usb
قابلیت اتصال به usb و شبکه lan و...
قابلیت اتصال کارت mmc و sd و...
پشتیبانی از usb 2.0
پورت های spi و i2c و ...
70 تا پایه ورودی و خروجی
6 تا adc ده بیتی
چند تا dac 10 بیتی (توی دیتا شیت تعداد نزده)
5 عدد تایمر و کانتر که میتونن از بیرون تحریک بشن و ...
rtc
ولتاژ تغذیه 3.3 تا 3.6 ولت
نوسان ساز داخلی کریستالی از 1 تا 24 مگاهرتز
و کلی امکانات دیگه که توی دیتا شیت این پروسسور موجود هست.


ایا کتاب و منبع فارسی یا انگلیسی برای یاد گیری این پروسسور میشناسید ؟

منبع انگلیسی :
help نرم افزار و سایت های زیر:


http://www.arm.com/documentation/books.html


کتاب به زبان اسمبلی:


http://www.arm.com/miscPDFs/9658.pdf