PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : [آموزش] با چه میکروکنترلر از خانواده arm کار نکنیم؟ و چه میکرویی انتخاب و کار کنیم؟



gangi
19-09-2013, 16:56
با سلام

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

به دلیل شتاب بالای نوآوری ها در این شاخه از میکروالکترونیک، ضروری است که با سرعت موجود هماهنگ باشیم.

و از تحولات این بخش جا نمانیم.

لذا این توصیه برای شما و برای فعالان این بخش مناسب می باشد.

==== لیست میکروهایی که به بازنشستگی رسیده اند و به زودی از چرخه تولید خارج می شوند =====


1- خانواده ARM TDMI7 که این قطعات در ایران رایج بودند:

AT91SAM7X256 ,
AT91SAM7X512
AT91SAM7S64
AT91SAM7S256

LPC2378
LPC2368
LPC2378
LPC23XX
LPC2361
LPC2364

LPC2101
LPC2138
LPC2148



2- بخشی از خانواده ARM9 که بعضی با ARM926J ساخته شده بود و اکنون دیگر قدیمی شده:

AT91SAM9260

STR912FW44

LH7A404

================================================== =========================

آن لیست اسامی قدیمی را بازنشسته کنید و با قطعات جدیدتر که طراحی آنها از حوالی 2010 و 2011 و 2012 و 2013 انجام شده استفاده کنید:

برای امور میکروکنترلی از خانواده های جدید شامل : CORTEX-M0 , CORTEX-M1 , CORTEX-M3 , CORTEX-M4

LPC17XX
LPC11XX
LPC12XX
LPC13XX

STM32F1XX
STM32F2XX
STM32F3XX
STM32F4XX

AT91SAM3X
AT91SAM4X

.........


و برای امور پرادزش کاربردی از: CORTEX-A5 , CORTEX-A7 , CORTEX-A8 , CORTEX-A9 , CORTEX-A15


برای شروع: CORTEX-A5

AT91SAM-A5X
...................

برای مرحله بالاتر: CORTEX-A8 . CORTEX-A9

SAMSUNG-EXYNOS 4210 ( برد کاربردی فروشگاه همسایه)
Rockchip - RK3066 ( برد mini pc mk808b )
ALLWINNER-A20 , ALLWINNER-A30 ( بردهای مارس و کوبی و کوبی 2 )
.............................................

================================================== ===========

برای کاربردهای بسیار سریع و سطح بالا، خانواده ترکیبی CORTEX-A15 + DSP66XXXX از تگزاس اینسترومنتز را ببینید.

================================================== =================

با سپاس

==================================================

پ.ن:

مدیریت محترم
لطفا" این پست را مهم کنید تا در معرض دید عموم و بویژه کاربران جدید قرار گیرد. با تشکر.

miladhp
03-01-2014, 00:40
اونوقت این میکروهایی که عرض کردید جایگزین بازنشسته ها بکنیم رو با این قیمتای نجومی چطور تهیه کنیم؟
با چی کانفیگ کنیم؟
همون at91sam7هم با بیچارگی میشه از امکاناتش استفاده کرد.با این خلا بازار قطعات و خلا اطلاعات کشور

KHM
03-01-2014, 15:26
من که میگم برا شروع lpc یا stm...
میکروی AT91SAM-A5X چند جا پیدا میشه؟ چنتا منبع هست براش؟
منظورتون از (برد کاربردی فروشگاه همسایه) همین سایته؟ مگه سایت دیگه ای هم داره اینو؟

mzarkoob
03-01-2014, 19:00
سلام
سری stm که قیمتش کمتره نسبت به lpc
آموزش lpc1768 که دردسترستره تا موارد دیگه و بردهای متنوع تری براش در فروشگاه هم هست

1nafar
03-01-2014, 20:46
سلام

==== لیست میکروهایی که به بازنشستگی رسیده اند و به زودی از چرخه تولید خارج می شوند =====
این گفته منبعی هم داره ؟

===============================
قبل از انتخاب میکروکنترلر برای شروع به کار باید چند تا نکته رو مد نظر داشت :
1- یکسان بدون هسته ها
توی میکروکنترلر های arm هسته ها یکسان هستند ، مثلا میکروکنترلر lpc2378 و at91sam7x256 هر دوشون از هسته ی آرم 7 استفاده میکنن . در این حالت شما اگه به محصولات یک شرکت تسلط کامل داشته باشید به راحتی میتونید به سراغ محصولات شرکت های دیگه برید .
2-یکسان بودن کامپایلر ها
تمامی کامپایلر های ارائه شده برای میکروکنترلر های ARM از تمامی خانواده ها و شرکت های فعال در زمینه ی تولید میکروکنترلر با هسته ی ARM پشیبانی میکنن ، مثلا نرم افزار های KEIL و IAR که دو تا از کامپایلر های معروف برای میکروکنترلر های ARM در ایران هستند ، از محصولات شرکت های مختلفی مثل ATMEL و فیلیپس و ST و... پشتیبانی میکنن .
به دلیل یکسان بودن هسته و یکی بودن کامپایلر ها ، شما به راحتی میتونید با محصولات مختلف چند تا شرکت ، بدون نیاز به اموزش های اضافه ، کار کنید ، فقط کافیه نام رجیستر ها رو تغییر بدید ( نمونه کد و توضیحات اضافه در مجله ی PMM شماره ی 2 ویرایش دوم وجود داره ) .
3-و...
===
برای اثبات موارد بالا من ادعا میکنم که میتونم با تمامی میکروکنترلر های مبتنی بر هسته ی ARM 7 کار کنم ، چون به میکروکنترلر های مبتنی بر هسته ی ARM7 شرکت اتمل به صورت کامل تسلط دارم .
توی همین سایت دوستان زیادی مثل هستند و بار ها مشاهده شده که فردی که با محصولات فیلیپس کار کرده ، به مشکلات میکروکنترلر های ST پاسخ میده و بلعکس .
در کل پروژه بدید ، کد تحویل بگیرید :wink:

=======================================
برگردیم به سوال اصلی :
با چه میکروکنترلر از خانواده arm کار نکنیم؟ و چه میکرویی انتخاب و کار کنیم؟
قبل از هر چیز باید بدونید که :
هیچ کدوم از قطعاتی الکترونیکی که تولید به بازار عرضه میشن ، از رده تولید خارج نمیشن ، این قطعه میتونه یک op-amp ، یک گیت منطقی ، یک ایسی حافظه ، میکروکنترلر یا هر قطعه دیگه ای باشه .
عدم تولید یا از رده خارج شدن یک قطعه تنها یک دلیل میتونه داشته باشه و اون هم وجود باگ در ساختار قطعه هست ، برای نمونه :
Pentium FDIV bug - Wikipedia, the free encyclopedia (You can see links before reply)
و اگه اشتباه نکنم سری d حافظه های at45db161
دو تا از قطعاتی که هستند که الان توی ذهنم هست .
این قطعات به دلیل وجود باگ سخت افزاری از رده خارج شدن و به سرعت با قطعات جدید ( قطعاتی که دقیقا مشابه با قطعه ی معیوب بود و در اون مشکل رفع شده ) جایگزین شدن .
بدبختر از میکروکنترلر های سری 8051 یا z80 فکر نکنم در تاریخ باشه ، با ورود میکروکنترلر های جدید به بازار ، این پردازنده ها به صورت کامل منسوخ شدن ، اما تولید اونا هنوز ادامه داره و به راحتی میتونید اونا رو تهیه کنید .
=========================
با رفع شدن اتهام از میکروکنترلر ها ( البته همون طور که در اول این پست درج شده ، برای توجیه این گفته ( از رده خارج شده میکروکنترلر ها ) نیاز به منابع بیشتری هست ) . فرد میتونه تصمیم بگیره با چه میکروکنترلری کار خودش رو شروع کنه .
به نظر من با میکروکنترلر شروع به کار کنید که :
1- دارای منابع آموزشی باشه .
برای میکروکنترلر های arm7 شرکت اتمل ، هسته های مختلف فیلیپس و شرکت st منابع آموزشی به مقدار کافی وجود داره .
2- در اینده بشه ازش استفاده کرد .
اگه هدف شما وقت گذرونی و صرفا کار با میکروکنترلر های جدید هست ، بدون هیچ واهمه ای با هر میکروکنترلری که دوست دارید کار کنید ، حداقل مزیت این کار این هست که یه برد اموزشی میخرید ( به چرخه ی اقتصادی کمک میکنید ) ، چند تا چیز جدید که بقیه ازش بی خبرن یاد میگیرید ( میتونید پیش دوستاتون کلاس بزارید ) و ....
اگه هدف شما از یادگیری میکروکنترلر ها کسب در امد ( در آینده ) هست ، برای خودتون یک پروژه تعریف کنید و با توجه به نوع پروژه بهترین میکروکنترلر رو انتخاب کنید ، نه بر حسب نوع میکروکنترلر ، پروژه رو .


و در آخر هر چیز جدیدی رو که یاد میگیرید به اشتراک بزارید تا دیگران هم بتونن از اون استفاده کنن .

Doloop
03-01-2014, 21:17
سلام
آقا تاریخ پست اول برای حدودا 4 ماه پیشه این رفیقمون آقا میلاد هم حواسش نبود یکم درد و دل کرد :wink:

مدیرای ما هم که کم نمیارن :0013:


میتونید پیش دوستاتون کلاس بزارید

آقای هاشمی شاید تا دوسال پیش میشد باهاش کلاس گذاشت ولی الان ماشاا... خیلی ها بلدن ...:o

mzarkoob
03-01-2014, 21:53
شما به راحتی میتونید با محصولات مختلف چند تا شرکت ، بدون نیاز به اموزش های اضافه ، کار کنید ، فقط کافیه نام رجیستر ها رو تغییر بدید ( نمونه کد و توضیحات اضافه در مجله ی PMM شماره ی 2 ویرایش دوم وجود داره ) .
البته همین مورد تغییر نام رجیسترها در کل به این سادگی هم نیست و وقت زیادی ممکنه ببره. ولی برای کسی که با lpc کورتکس کار کرده راحت تره بره سراغ stm چون هر دو کورتکسه ولی تا بیاد قلق stm دستش بیاد زمان می بره و به سادگی نیست ....


آقای هاشمی شاید تا دوسال پیش میشد باهاش کلاس گذاشت ولی الان ماشاا... خیلی ها بلدن ...:o
مطمئنن اگه آموزش های موجود الان نبود خیلی ها با شروع یادگرفتن ARM میدیدند که دچار چه دردسری شدند!

1nafar
03-01-2014, 22:42
البته همین مورد تغییر نام رجیسترها در کل به این سادگی هم نیست و وقت زیادی ممکنه ببره. ولی برای کسی که با lpc کورتکس کار کرده راحت تره بره سراغ stm چون هر دو کورتکسه ولی تا بیاد قلق stm دستش بیاد زمان می بره و به سادگی نیست ....
این حرف شما کاملا درست هست و منظور من برای حالتی هست که هسته ها یکی باشن .
قطعا برای سوییچ شدن از محصولات یک شرکت به شرکت دیگه ، نیاز به انجام مطالعه بر روی رجیستر ها و توابع مختص خانواده جدید هست ، اما نیازی نیست که کاربر از ابتدا همه چیز ها مثل نحوه ی کار با کامپایلر ، راه اندازی بخش های داخلی و... رو یاد بگیره و میتونه از اطلاعات قبلی خودش استفاده کنه .

gangi
04-01-2014, 22:16
سلام

تعدادی از قطعات در هر شرکت تولید کننده آی سی به دلیل
پایان یافتن چرخه عمر ( کاهش سفارشات و خرید آن قطعات و طراحی آی سی جدید و بهتر)

از برنامه تولید حذف می شوند.( از رده خارج )

این قطعات در سایتهای آنها در گروه:
-Obsolete
- NRND = Not Recommended for New Designs

قرار می گیرند

مثال اخیر آن MAX038 , XR2206 و ICL8038 فانکشن ژنراتورها هستند.
که هم INTERSIL و هم MAXIM تولید انها را قطع نموده اند.

مثال رایج هم پردازنده های PC هستند که تولیدشان به 10 سال ادامه نمی یابد و به دلیل سرعت نوآوری، جدیدها جایگزین می شوند.

================================================== ====================

8051 و Z80 به دلیل کاربرد بسیار گسترده آنها تا 6-8 سال قبل ( و به مدت بیش از 25 سال )،
و فروش بیش از 10 میلیارد قطعه از آنها و فراوانی مهندسین استفاده کننده ازآنها ، رایج بودند و عمر آنها ادامه دارد.

نسل میکروهای ARM7TDMI آن خصوصیت جهانشمولی را ندارد، و از سال 2009 با CORTEX-Mx جایگزین شده

و تمرکز سازنده ها بر این سری جدیدتر و کارآمدتر می باشد.

( فرصت کافی برای گسترش را قبل از آمدن نسل جدید، نداشتند )

پس به صورت طبیعی چرخه عمر آن خانواده ، زود به پایان خواهد رسید.

================================================== ===================

برای طراحان محصولات ، ادامه دار بودن تولید قطعات حداقل برای 5 سال، اهمیت زیادی دارد.

لذا اکنون که بیش از 18 سال از معرفی ARM7TMI ( از سال 1994 ) می گذرد

و تکنولوژی بهتر بعدی آمده و مستقر شده ،
و نیز از 2008 تعداد زیادی از سازندگان میکرو، شروع به طراحی با نسل CORTEX-Mx نموده اند

واضح و طبیعی و ضروری و عاقلانه است که افراد جدیدالورود، با نسل جدید کار کنند
و افراد با سابقه تر نیز به مرور و سریع به نسل جدید سوییچ کنند.

=============================================

البته شرکتهای معتبر آی سی سازی، تلاش می کنند تا چرخه عمر محصولات را ادامه دهند،
لیکن برای بعضی از آی سی ها، این موضوع امکانپذیر نمی شود .

=============================================

درود

12qwaszx
03-08-2016, 20:18
سلام
ببخشید حالا برای cortex A series آموزشی هست؟ می خوام کنار fpga کار کنم.
بد نیست حالا که 940 روز از زدن این تاپیک گذشته حداقل ببینیم در این حوزه چه پیشرفتی شده؟ :(
من یادم میاد سوال 2011 هم مشکل کار با A serise داشتم که جایی آموزش پیدا نگردم...