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

kherkhere

عضو جدید
با سلام خدمت دوستان
هدف از ایجاد این تاپیک آشنایی با میکرو کنترهای ARM و انشالله فراگیری اون به صورت کامله
هر کسی اطلاعات و یا منابعی برای یادگیری سخت افزار و برنامه نویسی اون داره بسم الله:gol:
 

kherkhere

عضو جدید
این میکرو ها هنوز جا نیفتاده ولی قابلیتهای فراوانی داره . شرکت های دیگه خواستند با تولید AVR32 و یا PIC32
با این میکرو رقابت کنند ولی نتونستند
شاید تو اکثر گوشی های موبایل از این میکرو ها استفاده میشه. برای شروع یه مقایسه کلی گذاشتم امیدوارم مفید باشهmoghayese ARM.JPG
 

Lu30Fer

عضو جدید
سلام.
با تشکر از موضوع انتخابی؛ مؤسسه نص در کتابچه فهرست کتابهاش از کتابی با عنوان "میکروکنترلرهای ARM سری AT91" نامبرده ولی هنوز چاپ نشده .
شاید این موضوع کمک بکنه.
 

mobtime

عضو جدید
کتاب مقدمه ای بر میکروکنترلرهای سری lpc2000(برنامه نویسی به زبانهای c و اسمبلی)

کتاب مقدمه ای بر میکروکنترلرهای سری lpc2000(برنامه نویسی به زبانهای c و اسمبلی)

مقدمه ای بر میکروکنترلرهای سری lpc2000(برنامه نویسی به زبانهای c و اسمبلی)


دانلود کتاب
 

bekar

عضو جدید
این میکرو ها هنوز جا نیفتاده ولی قابلیتهای فراوانی داره . شرکت های دیگه خواستند با تولید AVR32 و یا PIC32
با این میکرو رقابت کنند ولی نتونستند
شاید تو اکثر گوشی های موبایل از این میکرو ها استفاده میشه. برای شروع یه مقایسه کلی گذاشتم امیدوارم مفید باشهمشاهده پیوست 20481

یه چند مورد بود که می خواستم به شما بگم،
اولا شرکت اتمل خودش سازنده میکرو های AVR و پروسسور های ARM هست پس چه منظوری باید از رقابت بین محصولاتش باید داشته باشه!!
دومآ سری محصولات AVR ، میکروکنترلر هستند و سری محصولات ARM پردازشگر هستند!!
واصلآ تو یک گروه نیستند که بخواهیم با هم مقایسشون کنیم. مثلا فکر کن یه مادر بورد رو بخاهیم بایک CPU مقایسه کنیم.

ARM ها نیاز به مدارت جانبی برای کار دارند وخود به خودی خود امکان استفاده مستقیم ندرند در حالی که MCU های AVR یه پک کامل شامل همه چیز هست.


ARM ها به شدت قوی هستند و اقدرت اونها با توجه به معمری RISC شون قابل تصور نیست!


:w10:
 

mobtime

عضو جدید
یه چند مورد بود که می خواستم به شما بگم،
اولا شرکت اتمل خودش سازنده میکرو های AVR و پروسسور های ARM هست پس چه منظوری باید از رقابت بین محصولاتش باید داشته باشه!!
دومآ سری محصولات AVR ، میکروکنترلر هستند و سری محصولات ARM پردازشگر هستند!!
واصلآ تو یک گروه نیستند که بخواهیم با هم مقایسشون کنیم. مثلا فکر کن یه مادر بورد رو بخاهیم بایک CPU مقایسه کنیم.

ARM ها نیاز به مدارت جانبی برای کار دارند وخود به خودی خود امکان استفاده مستقیم ندرند در حالی که MCU های AVR یه پک کامل شامل همه چیز هست.


ARM ها به شدت قوی هستند و اقدرت اونها با توجه به معمری RISC شون قابل تصور نیست!


:w10:



سلام . دوست عزیز درسته ARM یک نوع پروسسوره و شرکت سازنده این پردازنده خود ARM هست ولی شرکت هایی مثل ATMEL و PHILIPS و ST و... میکروکنترلرهایی با نام میکروکنترلرهای ARM ساختن که همون پردازنده ARM در این میکروکنترلرها تعبیه شده .
و در ضمن سازنده این پروسسورها خود شرکت آرمه ....
برای دریافت اطلاعات بیشتر میتونید مقاله زیر رو بخونید
موفق باشی
 

پیوست ها

  • ARM.pdf
    1.2 مگایابت · بازدیدها: 0

bekar

عضو جدید
سلام . دوست عزیز درسته ARM یک نوع پروسسوره و شرکت سازنده این پردازنده خود ARM هست ولی شرکت هایی مثل ATMEL و PHILIPS و ST و... میکروکنترلرهایی با نام میکروکنترلرهای ARM ساختن که همون پردازنده ARM در این میکروکنترلرها تعبیه شده .
و در ضمن سازنده این پروسسورها خود شرکت آرمه ....
برای دریافت اطلاعات بیشتر میتونید مقاله زیر رو بخونید
موفق باشی


دوست عزیز مقالت اعتبار قوی علمی نداره :w08:

به سایت شرکت سازنده مراجعه فرما

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

پیوست ها

  • doc6280.pdf
    622.9 کیلوبایت · بازدیدها: 0
  • SAM3u-ek_REVB.pdf
    565.6 کیلوبایت · بازدیدها: 0

mobtime

عضو جدید
سلام . من دیگه نیازی به اطلاعات ARM ندارم و تا الان هم دو مورد از امکانات میکروی LPC2378 رو راه اندازی کردم و برد آموزشی این میکرو برام حدود 50000 تومان هزینه داشته ، و دیگه کاراز کار گذشته و برام مهم نیست پروسسور آرم چی هست ....

موفق باشی
 

navidkhob

عضو جدید
سلام . دوست عزیز درسته ARM یک نوع پروسسوره و شرکت سازنده این پردازنده خود ARM هست ولی شرکت هایی مثل ATMEL و PHILIPS و ST و... میکروکنترلرهایی با نام میکروکنترلرهای ARM ساختن که همون پردازنده ARM در این میکروکنترلرها تعبیه شده .
و در ضمن سازنده این پروسسورها خود شرکت آرمه ....
برای دریافت اطلاعات بیشتر میتونید مقاله زیر رو بخونید
موفق باشی

دوست عزیز مقالت اعتبار قوی علمی نداره :w08:

به سایت شرکت سازنده مراجعه فرما

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


دبا سلام به شما دو دوست عزیز.
البته arm پردازنده هستش و محصول شرکت atmel .
این قضیه با رفتن به سایت atmel به راحتی اثبات میشه.
ممنون از بحث علمیتون.
 

rm_mosavi

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

با تشکر
 

bekar

عضو جدید
سلام
پیشنهاد شخصی من مراجعه به منابع زبان اصلیه
تو خود سایت اتمل ، چنتا رفرنس هست.

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

saeidbaye

عضو جدید
سلام دوستان
با توجه به اطلاعاتی که از ARM و AVR دارم باید بگم که ARM هم از نوع میکرو کنترولرها می باشد و با AVR در یک خانواده است درسته که هردو توسط یک کمپانی تولید می شود ولی دلیلی ندارد که رقابتی بین دو محصولش باشد هر یک بنا به نیاز استفاده می شود مثلاٌ کارخانجات اتوموبیل سازی بنز انواع و اقسام اتوموبیل از سواری تا تریلر تولید می کنند که هر یک برای سلیقه و بر آورده شدن نیازی طراحی و عرضه می شوند. میکرو کنترولرها نیز به همین ترتیب.
به عنوان مثال من خودم در پروژه ای که حدود 1000 عدد میکروکنترلر در آن بکار رفته بود از AVR برای SLAVEها و از ARM برای MASTERها استفاده کردم( یک شبکه سنسورینگ صنعتی خاص)
 

robotali

عضو جدید
درود...
یکی از اساتید می گفت که این Advanced RISC Machines نه میکرو کنترلر هست و نه میکرو پروسسور...
بلکی Core (هسته) هست...
این که گفت یعنی چه...؟
:gol:
 

EECi

مدیر بازنشسته
درود...
یکی از اساتید می گفت که این Advanced RISC Machines نه میکرو کنترلر هست و نه میکرو پروسسور...
بلکی Core (هسته) هست...
این که گفت یعنی چه...؟
:gol:

Advanced RISC Machine - (ARM, Originally Acorn RISC Machine). A series of low-cost, power-efficient 32-bit RISC microprocessors for embedded control, computing, digital signal processing, games, consumer multimedia and portable applications. It was the first commercial RISC microprocessor (or was the MIPS R2000?) and was licensed for production by Asahi Kasei Microsystems, Cirrus Logic, GEC Plessey Semiconductors, Samsung, Sharp, Texas Instruments and VLSI Technology.

The ARM has a small and highly orthogonal instruction set, as do most RISC processors. Every instruction includes a four-bit code which specifies a condition (of the processor status register) which must be satisfied for the instruction to be executed. Unconditional execution is specified with a condition "true".

Instructions are split into load and store which access memory and arithmetic and logic instructions which work on registers (two source and one destination).

The ARM has 27 registers of which 16 are accessible in any particular processor mode. R15 combines the program counter and processor status byte, the other registers are general purpose except that R14 holds the return address after a subroutine call and R13 is conventionally used as a stack pointer. There are four processor modes: user, interrupt (with a private copy of R13 and R14), fast interrupt (private copies of R8 to R14) and supervisor (private copies of R13 and R14). The ALU includes a 32-bit barrel-shifter allowing, e.g., a single-cycle shift and add.

The first ARM processor, the ARM1 was a prototype which was never released. The ARM2 was originally called the Acorn RISC Machine. It was designed by Acorn Computers Ltd. and used in the original Archimedes, their successor to the BBC Micro and BBC Master series which were based on the eight-bit 6502 microprocessor. It was clocked at 8 MHz giving an average performance of 4 - 4.7 MIPS. Development of the ARM family was then continued by a new company, Advanced RISC Machines Ltd.

The ARM3 added a fully-associative on-chip cache and some support for multiprocessing. This was followed by the ARM600 chip which was an ARM6 processor core with a 4-kilobyte 64-way set-associative cache, an MMU based on the MEMC2 chip, a write buffer (8 words?) and a coprocessor interface.

The ARM7 processor core uses half the power of the ARM6 and takes around half the die size. In a full processor design (ARM700 chip) it should provide 50% to 100% more performance.

In July 1994 VLSI Technology, Inc. released the ARM710 processor chip.

Thumb is an implementation with reduced code size requirements, intended for embedded applications.

An ARM800 chip is also planned.

AT&T, IBM, Panasonic, Apple Coputer, Matsushita and Sanyo either rely on, or manufacture, ARM 32-bit processor chips.​
بنظرتون این موجود هسته هست یا میکروکنترلر هست یا میکرو پروسسور؟!
البته من منظور شما از هسته را نفهمیدم...

همانطور که میبینید در کتاب های قدیمی پروسسور وسیله ای بود مثل cpu ولی میکروکنترلر وسیله ای هست که همه واحد های یک کامپیوتر رو داره... با این تعریف قدیمی arm در کدوم یکی قرار میگیره؟
 

bekar

عضو جدید
دوستان توجه کنند که به دنبال این تکنولوژی حرف بی ربط زیاد هست!!!
بعضی افراد که نمی خواهند ، الکترونیک قدیمی رو فراموش کنند! به این فناوری انواع انگها رو می چسبونند‍! حالا چه استاد چه دانشجو!

تو همین زمانی که ما وقتمونو واسه اینکه به خودمون به قبولونیم که این پردازشگر چیه!!! ، این محصول مثل تیر پیشرفت کرد!
با عنوان کردن این چنین شبهه ها، ما جلوی جلو رفتن خودمونو می گیریم! اینو باور کنید!

می شود این سوال رو به عنوان پیام خصوصی فرستاد! نه تو این تاپیک که اولین تاپیک در مورد پردازش 32 بیت و سیستم عامل های این پردازشه!!!

هرکس از بیرون بیاد این پست هارو ببینه ، دیگه بر نمی گرده اینجا!

فکر نکنم خوندن مطالب صفحات ، شرکت ها زیاد مشکل باشه!
شرکت ها خودشون می دونن که از هم جای دنیا مردم صفحات رو می بینن ، پس خودشون صفحات رو به زبان رون می نویسن!
اگه باز هم مشکل داشتید! مترجم گوگل!بابیلون یا یه کتابچه (دیکشنری) می تونه کمکتون کنه!

البته اینجور برداشت نشه ، که پرسش سوال بده!!!
 

EECi

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

david-20-10

عضو جدید
لزفا کمک کنید

لزفا کمک کنید

با سلام و خسته نباشید.
دوستان من تازه میخوام شروع کنم. فقط میخواستم بپرسم کار با کدوم شرکت armراحتتر و بهتره؟منظور از بهتره یعنی تخصصی تره؟ ممنون میشم به ایمیل ام جواب بدید...
 
آخرین ویرایش توسط مدیر:

emrali

عضو جدید
با سلام و خسته نباشید.
دوستان من تازه میخوام شروع کنم. فقط میخواستم بپرسم کار با کدوم شرکت armراحتتر و بهتره؟منظور از بهتره یعنی تخصصی تره؟ ممنون میشم به ایمیل ام جواب بدید...

برای استارت کار بهتر است با سری nxp مثل:lpc2378 , lpc21xx کار کنی چون به نسبت دیگر arm ها راحتر و سورس بشتری وجود داره
خواهشن از دوستان بحث رو به موضوع مفیدتر و کاربردی ببرید.
با تشکر.
 

mobtime

عضو جدید
برای استارت کار بهتر است با سری nxp مثل:lpc2378 , lpc21xx کار کنی چون به نسبت دیگر arm ها راحتر و سورس بشتری وجود داره
خواهشن از دوستان بحث رو به موضوع مفیدتر و کاربردی ببرید.
با تشکر.

سلام.من هم برای استارت کار از میکروی LPC2103 استفاده کردم ، دلیل استفاده از این میکرو ساده بودن سخت افزار(برد آموزشی) و قیمت ارزان (حدود 6000 تومان) ولی رابط USB نداره.
برد آموزشی این میکرو رو ضمیمه کردم ، خودم هم با پروتل طراحی کردم،هنوز کامل نشده .در ضمن کتابخانه proteus هم برای شبیه سازی این میکرو و چند میکروکنترلر شرکت NXP رو داره.

Single-chip 16-bit/32-bit microcontrollers; 8 kB/16 kB/32 kB
flash with ISP/IAP, fast ports and 10-bit ADC​
 

پیوست ها

  • mcb2103-schematics.pdf
    290 کیلوبایت · بازدیدها: 0

kahkeshaniii

عضو جدید
سلام.
با تشکر از موضوع انتخابی؛ مؤسسه نص در کتابچه فهرست کتابهاش از کتابی با عنوان "میکروکنترلرهای ARM سری AT91" نامبرده ولی هنوز چاپ نشده .
شاید این موضوع کمک بکنه.
سلام ، این کتاب الان دیگه چاپ شده ولی توش هیچ خبری از برنامه نویسی نیست و فقط درباره ی ساختار خوده ARM توضیح داده
 

matmat

عضو جدید
سلام بر مهندسین عزیز
من دانشجوی ترم آخر کارشناسی سخت افزارم
استادم برا پروژه پایانی بهم گفته ک یه برنامه با زبان سی برای میکرو پروسسور ARM تحت لینوکس بیارم ک من اصلا آشنایی با این مباحث ندارم.اگر میشه بزرگواری کنین و یه برنامه سی برای پروسسور ARM بهم بدین .ممنون
 
آخرین ویرایش توسط مدیر:

سعید گروسی

عضو جدید
کاربر ممتاز
امروزه با پیشرفت روز افزون تجهیزات و الكترونیكی شدن آنها، بكارگیری سیستم های یكپارچه رونق زیادی یافته است. به طوری كه در اكثر دستگا ههای جدید از این سیستم ها استفاده می شود. به عنوان مثال گوشی های همراه، دستگاه و ....اكثراً دارای این تجهیزات الكترونیكی می باشند. با توجه به این موضوع اكثر ABS سیستم های ترمز ،GPS شركت ها و كارخانجات الكترونیكی به سمت این سیستم های الكترونیكی روی آورده اند. كه این خود باعث ایجاد یك رقابت در بین تولیدكنندگان پردازنده های سرعت بالا شده است. در این خلال نسل جدید پردازنده های ARM به بازار معرفی شدند ، كه دارای سیستم پردازش 32 بیتی با سرعت پردازش چند مگاهرتز تا چند صد مگ اهرتز می باشند . سرعت بالا، قیمت ارزان و حجم كم این پردازنده ها باعث شد كه اكثر تولیدكنندگان میكروكنترلرها و پروسسورها مانند ATMEL PHILIPS, و... آنرا در لیست محصولات خود قرار دهند.حجم كم پردازنده های ARM باعث شده كه اكثر فضای داخلی میكروكنترلرها برای تجهیزات جانبی مانند DAC ، Serial, LAN, USB, ADC و ... بكار گرفته شود.هسته داخلی تمام میكروكنترلرهای ARM كارخانجات مختلف یكی است بنابراین برنامه نوشته شده برای یك سری از میكروكنترلرها را می توان برای سری دیگر نیز استفاده كرد.
[FONT=tahoma,arial,helvetica,sans-serif]
[/FONT]​
[FONT=tahoma,arial,helvetica,sans-serif]
[/FONT]​

[FONT=tahoma,arial,helvetica,sans-serif]پردازنده هایی كه در میكروكنترلرهای ARM
[FONT=tahoma,arial,helvetica,sans-serif]استفاده می شوند ، پردازنده های 32 بیتی با معماری Risk می باشد، این پردازنده ها برای كاربردهای قابل حمل (Portable) بهینه سازی شده اند به صورتی كه مصرف توان آن ها بسیار كم است و می توان آن ها را توسط باتری برای مدت زیادی روشن نگه داشت به عنوان نمونه می توان گوشی های موبایل را نام برد كه در آنها از این هسته پردازشی استفاده می شود.
[/FONT][/FONT]​
[FONT=tahoma,arial,helvetica,sans-serif]معروفترین هسته پردازنده ARM7 ، ARM می باشد كه یكی از رایج ترین هسته های پردازشی موجود می باشد.
بعد از ARM 7 به ترتیب ARM9 و ARM10 و ARM11 قرار دارند.
انواع هسته های پردازنده سری : ARM7

ARM7TDMI (1: رایج ترین هسته پردازنده 32 بیتی با معماری RISK می باشد.
: ARM7TDMI-S (2 این هسته نسخه قابل سنتز ARM7TDMI است.
ARM72OT (3: این هسته علاوه بر ویژگی های هسته های بالا داری حافظه CASHو بخش مدیریت حافظه می باشد.
: ARM7EJ-5 (4 این هسته برخی از قابلیت های پیشرفته DSP را در خود دارد و برای كارهای پردازش سیگنال مناسب می باشد.

پردازنده های ARM از سیستم PIPELINE برای پردازش استفاده می كنند منظور از این سیستم این است كه پردازنده دارای سه مد كاری برای اجرای یك دستور است:
FETCH (1 یا بازخوانی اطلاعات از حافظه كد
DECODE (2 یا رمزگشایی اطلاعات نوشته شده
EXECUTE (3 یا اجرای برنامه در پردازنده های قدیمی تر
در سیكل اول دستور اول FETCH می شود ، در سیكل دوم دستور اول DECODE می شود دستور دوم FETCHمیشود. در سیكل سوم دستور اول EXECUTE دستور دوم DECODE می شود و دستور سوم FETCHمی شود.
این نوع سیستم 3 STAGE PIPELINE است.
در پردازنده های ARM بالاتر مانند ARM9 سیستم پردازش 5STAGE PIPELINE می باشد كه عملیات خواندن و نوشتن از حافظه ها نیز جزء این عملیات قرار گرفته در10 ARM سیستم پردازش به صورتPIPELINE 6 STAGE است.

انتخاب میکرو کنترلر :

شرکت های مختلفی میکروکنترلر های بر مبنای پروسسور ARM می سازند مانند : atmel , Philips ,Samsung , St-micro , Motorola و کمپانی های دیگر ما از میان این شرکت ها میکروکنترلر های ساخت Philips رو که از تولید شرکت NXP است به دلایل زیر انتخاب کردیم:
· قطعات سری LPC2000 یکی از متنوع‏ترین خانواده‏ های میکروکنترلرهای با هسته‏ی ARM7 هستند و قطعات این سری، در مقایسه با AT91SAM قیمت کمتری دارند. مثلاً قیمت LPC2101 حدود 2 دلار است که این مقدار از خیلی از میکروکنترلرهای 8 بیتی (مثل ATmega16) کمتر است.
· اجرای برنامه از حافظ ه‏ی فلش بسیار سریعتر است. بدلیل دسترسی 128 بیتی به حافظه‏ی فلش و وجود واحد شتاب‏دهنده‏ی حافظه (MAM)، قطعات LPC2000 می‏توانند در مُد ARM با حداکثر سرعت 60 تا 75 MHz به حافظه‏ی فلش دسترسی داشته باشند؛ در حالیکه که SAM7ها با سرعتی کمتر از نصف این مقدار کد برنامه را اجرا می‏کنند. علاوه براین، در مقایسه با سایر میکروهای با هسته ی ARM7، فرکانس کاری میکروکنترلرهای LPC2000 نسبتاً بالاست (60 تا 70 مگاهرتز در LPC2000ها در مقایسه با 55 مگاهرتر در sam
· راه‏اندازی Peripheralهای قطعات LPC2000 ساده‏تره. اکثر سخت‏افزارهای جنبی به شکلی طراحی شده‏اند که لازمه رجیسترهای کمتری تنظیم بشن و بسیاری از اونها را می‏تونید به حالت پیش‏فرض رها کنید.
· میکروکنترلرهای LPC2000 دارای Peripheralهایی هستند که به ندرت در سایر میکروکنترلرهای با هسته‏ی ARM7 دیده می‏شه. مثلاً تایمر 32 بیتی با پیش‏تقسیم‏کننده‏ی 32 بیتی (AT91SAMها فقط تایمر 16 بیتی دارن!)، DAC، RTC، LIN، SSP، MMC/SD Controller، USB Host/OTG، Fast GPIO ،XGA LCD Controller و غیره.
· قطعات LPC دارای تعداد I/O بیشتری هستند. مثلاً قطعه‏ی LPC2132 که یک قطعه‏ی 64 پایه است 47 پایه‏ی GPIO داره درحالیکه قطعه ی مشابه 64 پایه ای AT91SAM7S64، دارای 32 خط I/O است.
· مستندات و نمونه برنامه های ارائه شده توسط NXP برای LPCها کاملتر و غنی از ATmel برای SAM7هاست.


حافظه فلش چیپ می تواند به روش های مختلفی برنامه ریزی شود :

1- واسط سریال J-Tag 2- به صورت ISP توسط UART0 3- استفاده از in application programming (IAP)

کامپایلر ها و مفسر های موجود برای چیپ های ARM را در اینجا ذکر می کنم :

IAR : قابلیت برنامه نویسی میکرو کنترل های ارم ببه زبان های C و C++و اسمبلی ، امکان شبیه سازی برنامه نوشته شده ، پشتیبانی تمامی میکروکنترلر های ارم ، منابع اموزشی متوسط و محیط حرفه ای ، پشتیبانی از SPY-C که امکانات خیلی زیادی دارد ، سرعت اجرای بالا و سازگاری کامل با ANSI C ، توابع کتاب خانه ای کم ، نداشتن باگ های امنیتی.

Winarm : قابلیت برنامه نویسی به زبان های C و C++ ، عدم شبیه سازی برنامه ، فقط پشتیبانی ARM7 ، منابع آموزشی و مثال های زیاد ، متن باز بودن برنامه و بالطبع رایگان بودن ، داشتن توابع کتابخانه ای بالا ، 3 سال است که این نرم افزار به روز رسانی نشده است.

Keil : برنامه نویسی به زبان های Cو C++ و اسمبلی ، امکان شبیه سازی برنامه نوشته شده ، پشتیبانی تمام میکروکنترلر های ARM ، کاربرپسند بودن برنامه و منابع اموزشی متوسط

سایر کامپایلر ها : Cross works for ARM , Flowcode ARM, ARM ADS,تقریبا دو کامپایلر keil و IAR از محبوبیت بیشتری برخوردارند .
[/FONT]​
 

سعید گروسی

عضو جدید
کاربر ممتاز
تو این تاپیک قراره در مورد میکرو کنترلر های ARM صحبت بشه . همونطور که میدونید از هسته های پردازشی ARM ،در حال حاظر، در تمامی موبایلها استفاده میشه ، این پردازنده ها توان پردازشی بالایی رو در کنار مصرف بسیار کم انرژی ارائه میکنند . همین عامل سبب شده بهترین گزینه برای استفاده در وسایل قابل حمل باشند(اخیرا یک netbook هم بر اساس همین خانواده cpu ساخته شده که میتونه فیلم 720p رو 8 ساعت پخش کنه)
جالبه بدونید علارغم همه ی این برتری ها قیمت این میکروکنترلر ها(دارای هسته ی ARM) خیلی گرون نیست ، به طور مثال At91SAM7s (ساده ترین نوع) با قیمت 10 هزار تومن امکانات بسیار بالایی رو در اختیار میگذاره:
High-performance 32-bit RISC Architecture
64 Kbytes حافظه فلش
16 kbytes رم داخلی (قابل اتصال به 4 گیگ رم خارجی!)
Low-power RC Oscillator, 3 to 20 MHz On-chip Oscillator and one PLL
20-bit Programmable Counter plus 12-bit Interval Counter
Real-time Timer 32bit دارای alarm
One USB 2.0 Full Speed (12 Mbits per Second) Device Port
One Four-channel 16-bit PWM Controller
One 8-channel 10-bit Analog-to-Digital Converter
Fully Static Operation: Up to 55 MHz at 1.65V and 85°C Worst Case Conditions
البته به این نکته هم توجه داشته باشید که این میکرو مثلا در 10 مگاهرتز خیلی بیشتر از یه avr (سریعترین میکروی 8 بیتی) تو همون فرکانس ،توان پردازشی داره.
خب ممکنه سوال کنید اگه اینقدر خوبه پس دیگه چرا از بقیه میکرو ها استفاده میشه؟ در جواب باید گفت:
1.این میکرو ها 4 ساله تولید میشن برای همین منابع آموزشی زیادی ندارن
2.کد نویسی تو کامپایلر این میکرو ها (در حال حاظر) خیلی پیچیده تره. و علیرغم اینکه زبان برنامه نویسی مثلا c هست ولی دستورات بیشتر به اسمبلی نزدیکن!
3.همه این ic ها smd هستن که کار باهاشون سختره (سوکت ندارن و سختر لحیم میشن)
4.به علت موارد بالا برای افراد مبتدی مناسب نیستن!


معرفی حانواده میکروکنترلر های arm ساخت اتمل:



arm7

AT91SAM7A : این سری برای کار هایی که به شبکه های can نیازه مناسبه و بقیه امکاناتش معمولی هست.

AT91SAM7L : قابلیت ویژه این سری مصرف بسیار کم انرژی است. برای همین برای کار های پرتابل(استفاده از باتری) بسیار مناسبه.

AT91SAM7S : این سری برای شروع بسیار مناسبه و تقریبا همه امکانات ، مخصوصا sam-ba ، رو داره و یه چیز همه منظوره هست

AT91SAM7SE : این سری مثل همون 7s هست فقط یه باس اضافه برای مموری خارجی داره

AT91SAM7X : قابلیت ویژه این سری امکانات کامل شبکه مثل ethernet هست. در حقیقت کاملتر از 7a هست.


arm9 :

AT91SAM9 (مثل at91sam9260) : برنامه نویسی این سری شبیه arm7 هست و تقریبا تمام امکاناتی رو که در بالا گفته شد رو یکجا داره!!! علاوه بر اینحا دارای فرکانسی نزدیک به 3برابر arm7 هست!

AT91SAM9XE : این سری دارای امکانات بیشتری برای شبکه هست

AT91X40 : مشخصه ویژه این سری حجم بالاتر فلش و حافظه ،در حد چند مگ، هست












 

سعید گروسی

عضو جدید
کاربر ممتاز
پروسسورهایی که ساخت شرکت ARM هستند ، از نوع 32 بیتی و دارای معماری RISC هستند و سرعت نسبتا بالایی هم دارند و مجهز به برخی امکانات داخلی و حافظه کش مناسبی هم هستند .
قابلیت ها و باس های استانداردی که برای این پروسسورها در نظر گرفته شده به همراه سرعت بالا ، حافظه کش مناسب ، مقایسه گرهای داخلی ، تایمرهای 16 بیتی برای پیاده سازی RTC و ... ، باعث شده که عملکرد این تراشه ها نسبت به انواع دیگر پروسسورهای هم تراز ، دارای کیفیت و قدرت بالاتری باشه .


مقایسه ی انواع Arm ها .
:

1) Max Clock is 60 to 133 MHZ
2) Memory System is Von neumann
3) Power=0.28mw/mhz
4) Pipeline=3 Stage
5)instruction set =ARMV4 Thumb
---------------------------------------------------
Cortex-M3:

1) Max Clock is 30 to 72 MHZ
2) Memory System is Harvard
3) Power=0.19 mw/mhz
4) Pipeline=3 Stage
5) instruction set =ARMV7 Thumb2
---------------------------------------------------
ARM9:

1) Max Clock is 140 to 220 MHZ
2) Memory System is Harvard
3) Power=0.25 mw/mhz
4) Pipeline=5 Stage
5) instruction set =ARMV4 Thumb
---------------------------------------------------
ARM10:

1) Max Clock is 200 to 400 MHZ
2) Memory System is Harvard
3) Power=0.12 to 0.25 mw/mhz
4) Pipeline=6 Stage
5) instruction set =ARMV5E Thumb
---------------------------------------------------
ARM11:

1) Max Clock is 350 to 550 MHZ
2) Memory System is Harvard
3) Power=0.45 to 0.80 mw/mhz
4) Pipeline=8 Stage
5)instruction set =ARMV6 Thumb And Thumb-2























 

englanderghost

عضو جدید
دوستان من تاپیک رو مطالعه کردم و برام جای تعصف داشت که هنوز یک سری با دوستان ماهیت شرکت آرم هم آشنا نیستند...

شرکت آرم یک شرکت چند ملیتی هست که در کمبریج اننگلستان واقع شده ،شما حتی یک میکرو هم پیدا نمیکنید که ساخت شرکت آرم باشه... پس چجوری کار میکنن؟! الان میگم...

شرکت آرم میان و با مهندس های خبره ای که داره که درآمد ماهیانه ی هرکدومشون هم کمتر از 60000 $ نیست،ساختار یک میکرو رو طراحی میکنن (architecture) و بعد این شاهکار مهندسی خودشون رو به شرکت هایی که شما هم اشاره کردین بصورت لایسنس میفروشن...
هنگام فروش یک مبلغی رو میگیرن و به ازای هر میکروی تولید شده هم یک مبلغ... (ببین که چه غولیه واسه خودش... الکی نیست که شرکتش هلدینگ هست..)



»منابع:مغز،منبع آب، جلبک روی آجرهای دیوار شرکت آرم(خودش بهم گفتا)
 

Joe_Bel

کاربر فعال تالار مهندسی برق ,
کاربر ممتاز
شاید تازگی زیاد شنیده باشید که سی‌پی‌یوی این تبلت ARM است. و شاید خیال کرده باشید که آرم، یک تولید کننده سی‌پی‌یو است.



در حالیکه ARM یک نوع معماری است. همانند معماری‌های دیگر: x86 , x64





ARM مخفف عبارت Advanced RISC Machine است. یعنی ماشین‌های پیشرفته تحت پروتکل ریسک.


سی‌پی‌یوهای آرم در کمپانی بریتانیایی ARM holding طراحی شده است. این کمپانی خودش سی‌پی‌یو تولید نمی‌کند. بلکه با فروختن گواهی استفاده از این معماری، کسب درآمد می‌کند.



RISC و CISC


این، دو نوع معماری ساخت سی‌پی‌یو است. که در ریسک از تعداد کمی (۳۵۰۰۰ عدد) ترانزیستور استفاده می‌شود. و نمونه کامل آن هم ARM است. این سری، ارزان است؛ کم‌مصرف است؛ حرارت کمی تولید می‌کند؛ و قدرت و سرعت پایینی دارد.

اما در کیسک که نمونه کامل آن سری x86 است و بسیاری از محصولات اینتل هم اینگونه است؛ تعداد میلیونها ترازیستور وجود دارد. و به همان اندازه هم پرمصرف است؛ حرارت تولید می‌کند؛ گران است؛ و قوی و سریع می‌باشد.



RISC مخفف عبارت Reduced instruction Set Computing است. که به معنی ساختار کاسته شده محاسباتی است.



CISC مخفف عبارت Complex Instruction Set Computing است. که به معنی ساختار پیچیده محاسباتی است.

در ریسک، باید فرامین ارسالی به سی‌پی‌یو ساده و تک‌فرمانی باشد. اما در کیسک می‌توان فرامین پیچیده و با تعدادی بالا را ارسال کرد تا پردازش شود.


در ریسک دسترسی به حافظه به سختی صورت می‌گیرد. و این را شما در کار با مثلا آندروید تجربه کرده‌اید. چیزی که وقتی با ویندوز کار می‌کنید، از راحتی کار با درایو‌ها لذت می‌برید.

تولید کنندگان عمده آرم همانطور که احتمالا می‌دانید؛ اپل (Ax) – سامسونگ (exynos) – ان‌ویدیا (tegra) – و کوالکام است.



اما دهها شرکت دیگر هم با استفاده از گواهی‌های آرم، به تولید سی‌پی‌یو‌های مصرفی خودشان می‌پردازند. نظیر:‌ ال‌جی، شارپ، آلکاتل، فوجیتسو، هواوی، اینتل، مایکروسافت، نک، پاناسونیک، سونی‌اریکسون، تگزاس، توشیبا، یاماها.



اما برای کار با آرم از چه سیستم‌عاملی باید استفاده کرد؟



مسلم است سیستم عاملی که از RISC پشتیبانی کند. یعنی شما نمی‌توانید یک ویندوز سون را روی آرم سوار کنید. اما مسلما می‌دانید آندروید را می‌توانید.

اصولا سیستم‌عامل‌های بر اساس لینوکس را می‌توان بر آرم استوار کرد. یعنی آندروید، گوگل‌کروم، بادا، اوبونتو، دبیان.

سیستم‌عامل‌های اپل را هم می‌توان بر آرم استوار کرد.

برخی سیستم‌عامل‌های دیگر را هم می‌توان: Windows RT, Windows CE, symbian.

سی‌پی‌یوهای بر اساس آرم در اکثر اسمارت‌فون‌ها و تبلت‌ها وجود دارد. و به نظر می‌رسد نسل آینده کامپیوتینگ بشر را در دست خواهند گرفت.
 
آخرین ویرایش:

pouyaweb7

عضو جدید
کتاب در حوزه میکروکنترلرها که توش بزنامه نویسی هم خوب توضیح داده باشه کسی میشناسه؟
 

ehsan*

عضو جدید
کتاب در حوزه میکروکنترلرها که توش بزنامه نویسی هم خوب توضیح داده باشه کسی میشناسه؟

معمولا کتابهای توی بازار توی فصلهای اول درباره برنامه نویسی توضیح میدن!
دوتا کتاب که خوندم و خوشم اومد:
AVR:کتاب پرتویی فر انتشارات نص
ARM:کتاب زرگری انتشارات دیباگران تهران
موفق باشید...
 
بالا