تبلیغات
برق و الکترونیک - مزایا و معایب میکروکنترلرهای مختلف

مزایا و معایب میکروکنترلرهای مختلف

تاریخ:پنجشنبه 10 شهریور 1390-01:46 ق.ظ

 

مزایا و معایب میکروکنترلر های مختلف نسبت به هم



از آن جای که ۶۸۱۱ و z8 خیلی کمتر استفاده میشوند به معرفی سه نوع دیگر میپردازم.

۱) : اول از ۸۰۵۱ شروع میکنیم . این خانواده از میکرو کنترولر ها جزو اولین نوع میکرو کنترولر ها یی بود که رایج شده و جزو پیشکسوتان مطرح میشود . معروف ترین کامپایلر برای این نوع میکرو keil یا franklin می باشد میکرو های این خانواده به نوسان ساز نیاز مند هستند و درمقابل خانواده pic یا AVR از امکانات کمتری برخور دار می باشد معروف ترین آی سی ها این خانواده ۸۹S51 یا ۸۹C51 می باشد . ابتدا این میکروکنترلر توسط شرکت بزرگ intel ساخته شد .اما بعدا intel این امکان را به دیگر شرکت ها داد که این میکروکنترلر را تولید کنند و شرکت هایی مانند ATMEL , PHILIPS , SIEMENS , DALLAS و… به تولید این میکروکنترلر پرداختنند یکی از شرکت هایی که به صورت گسترده به تولید این تراشه پرداخت ATMEL بود که مدل های مختلف میکروکنترلر ساخت این شرکت در سرار جهان و در ایران به خوبی یافت می شود.
اما اگربخواهیم به صورت کلی سیر پیشرفت این نوع میکروکنترلر رو در نظر بگیریم اولین میکروکنترلر هایی که ساخته شد با جدیدترین میکروکنترلرهای ۸۰۵۱ که الان تولید میشود با توجه به این پیشرفت شگفت در تمام زمینه ها که صنایع دیگر در دنیا دارند پیشرفت زیادی ندارد به طور مثال AT89S5X که میکروکنترلر ۸۰۵۱ جدید ساخت ATMEL است نسبت به مدل های اولیه ۸۰۵۱ پیشرفت آنچنانی ندارد . امکانات این میکرو نسبت به AVR و PIC قابل مقایسه نیست . به صورتی که که همین مدل جدید ۸۰۵۱ تقریبا حافظه ای برابر یک صدم (۰.۰۰۱ ) میکروکنترلر های AVR را دارد و سرعتش ۴ برابر کمتر از میکروکنترلر های PIC و ۱۲ بار کمتر از میکروکنترلر های AVR است . از لحاظ امکانات دیگر هم چنین ضعفی احساس میشود. اما برای کارهای ساده تر که پیچیدگی زیادی در آن نباشد به خاطر قیمت بسیار پایینی که این میکروکنترلر دارد بسیار مناسب است . قیمت همین مدل جدید AT89S5X حدود ۱۰۰۰ تومان است که قیمت بسیار مناسبی است.

این میکرو کنترلر از زبان اسمبلی و C پشتیبانی میکند که زبان برنامه نویسی اصلی آن اسمبلی است که واقعا نوشتن با این زبان برنامه نویسی نسبت به زبان های برنامه نویسی دیگر هم مشکل تر و هم طولانی تر است. در کل این میکروکنترلر امروزه دیگر توانای رقابت با AVR و PIC رو ندارد و امروزه رقابت اصلی بین این دو میکروکنترلر است .


۲)میکروکنترلرPIC
این خانواده از نظر امکانات مانند AVR میباشد و در کل صنعتی تر است .
واقعا میکروکنترلر خیلی قوی است که بر اساس بعضی آمار ها بیشترین کاربر را به خود اختصاص داده است البته متذکر شوم که در ایران این آمار به نفع AVR است. این میکروکنترلر ساخت شرکت میکرو چیپ است که PIC رو در مدل های خیلی زیادی با امکانات مختلف برای کارهای مختلف میسازد . این میکروکنترلر با مدل های مختلفPIC16XXX و PIC12XXXX که به جای X دوم از چپ به راست حروف C ,X,E,F قرار میگره که هر کدام مفهوم خاصی داره که چون بحث ما آموزش AVR است از روی اون سریع میگزریم X های بعدی هم اعدادی هستنند که نشان دهنده مدل های مختلف هستنند .


۳)میکروکنترلرAVR
این خانواده از میکرو کنترلرها تمامی امکانات ۸۰۵۱ را دارا می باشد و امکاناتی چون ADC (مبدل آنالوگ به دیجیتال) - نوسان ساز داخلی و قدرت و سرعت بیشتر - EEPROM (حافظه) از جمله مزایای این خانواده می باشد مهم ترین آی سی این خانواده Tiny و Mega است.
به میکروکنترلر AVR میرسیم که بهترین میکروکنترلر موجود در بازار است .اول از همه سرعت این میکروکنترلر بسیار بالاست و به قولی دستوراتی که بهش داده میشه در یک سیکل کلاک انجام میده در صورتی که این سیکل کلاک برای ۸۰۵۱ باید تقسیم بر۱۲شودو برای PIC باید تقسیم بر ۴ بنابراین AVR سریعترین میکروکنترلر موجود در بازار است . AVR از زبان های برنامه نویسی سطح بالا یا به اصطلاح
(HIGH LEVEL LANGUAGE) HLL پشتیبانی میکند که باعث تولید کدهای بیشتری میشود که در کل برنامه نوشته شده نسبت به برنامه هایی که برای ۸۰۵۱ و PIC نوشته میشود کوتاهتر است. امکانات جانبی این میکروکنترلر بسیار مناسب است و شما را از خرید بعضی لوازم جانبی مانند چیپ های آنالوگ به دیجیتال (ADC) , مقایسه گر آنالوگ و… راحت میکند .در ضمن AVR از بسیاری از استاندارد های ارتباطی مانند SPI,UART,12C,JTAG پشتیبانی میکند که به راحتی میتوان این میکروکنترلر را با میکروکنترلر دیگر یا و سایل دیگر وصل کرد و با وسایل دیگر به راحتی ارتباط برقرار کند. قیمت این میکروکنترلر هم به نسبت امکانات فراوانی که داره بسیار پایین است به طوری که یک میکروکنترلر AVR تقریبا پیشرفته رو با قیمت حول و حوش ۳ تا ۴ هزار تومان خرید .
شرکت Atmel 5 میکروکنترلر ۸ بیتی AVR جدید با توان مصرفی بسیار پایین برای استفاده در مدارات با تعداد کدهای بالا و اینترفیسینگ زیاد عرضه نموده است.
این میکروکنترلر ها با نام های ATmega640، ATmega1280، ATmega2560، ATmega1281، ATmega2561 عرضه شده است و دارای ۶۴ تا ۲۵۶ کیلو بایت flash و ۸ کیلو بایت RAM به صورت داخلی می باشد.
این میکروهای جدید مدارات جانبی میکروها را با توجه به مدارات داخلی خود کاهش داده است که از آن جمله می توان به وجود یک اسیلاتور RC 8 مگا هرتزی در داخل خود که باعث حذف اسیلاتور خارجی گشته است را نام برد؛ از دیگر قابلیت های جالب این میکرو مصرف بسیار پایین آن می باشد این میکرو که با ۱.۵ ولت کار می کند در حالت power down تنها ۱۰۰ نانو آمپر مصرف می کند که باعث افزایش عمر باتری خواهد شد.
مدل ۱۰۰ پین این میکرو ها داراری ۴ کانال UART و ۱۶ عدد A/D می باشد.


 

 

 

میکرو کنترلر

میکرو کنترلر  (Microcontroller)

کلمه میکروکنترلر از دو کلمه میکرو و کنترلر تشکیل شده است که میکرو یک واحد یونانی است و برابر با 10 به توان منفی 6 متر است. یعنی یک ملیونیوم متر کنترلر نیز به معنای کنترل کننده است.


میکروکنترلر ها حکم یک کامپیوتر در ابعاد کوچک و قدرت کمتر را دارند

بیشتر این آی سی ها برای کنترل و تصمیم گیری استفاده می شود چون طبق الگوریتم برنامه ی آن عمل می کند این آی سی ها برای کنترل ربات ها تا استفاده در کارخانه صنعتی کار برد دارد

میکرو کنترلر ها دارای کامپایلرهای خاصی می باشد که با زبان های Assembly basic, c می توان برای آنها برنامه نوشت سپس برنامه نوشته شده را توسط دستگاهی به نام programmer که در این دستگاه ای سی قرار می گیرد و توسط یک کابل به یکی از در گاه های کامپیوتر وصل می شود برنامه نوشته شده روی آی سی انتقال پیدا میکند و در Rom ذخیره می شود

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

1. یک میکرو کنترلر را می توان طوری برنامه ریزی کرد که کار چندین گیت منطقی را انجام دهد.

2. تعداد آی سی هایی که در مدار به کار میرود به حداقل می رسد.

3. به راحتی می توان برنامه میکرو کنترلر را تغییر داد و تا هزاران بار میتوان روی میکرو برنامه های جدید نوشت و یا پاک کرد.

4. به راحتی می توان از روی یک مدار منطقی کپی کرد و مشابه آن را ساخت ولی در صورتی که از میکرو کنترلر استفاده شود و برنامه میکرو را قفل کرد به هیچ عنوان نمی توان از آن کپی گرفت .

ممکن است سوال دیگری مطرح گردد و آن تفاوت میکروپروسسور با میکروکنترلر است:

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


میکرو کنترلر به دو صورت می تواند عمل کند

بر مبنای ورودی هایی که به آن داده می شود خروجی خود را تنظیم می کند.

یا اینکه ورودی تعریف نشود و تنها بر اساس برنامه عمل کند و خروجی فقط بر اساس برنامه باشد.

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

Cpu (واحد پردازش)

Alu (واحد محاسبات)

I /O (ورودی ها و خروجی ها)

 Ram حافظه اصلی میکرو

Rom حافظه ای که برنامه روی آن ذخیره می گردد

Timer برای کنترل زمان ها

می باشد. علاوه برآن میکروکنترلرها دارای خانواده های مختلفی چون PIC - AVR – 8051 ها می شوند که به بررسی تک تک آنها خواهیم پرداخت از قابلیت های فوق العاده میکرو کنترلر ها و مزیت آنها قابلیت برنامه ریزی آنها می باشد و دارای کامپایلرهای خاصی می باشند که با زبان های Assembly basic, c می توان برای آنها برنامه نوشت سپس برنامه نوشته شده را توسط دستگاهی به نام programmer که در این دستگاه ای سی قرار می گیرد و توسط یک کابل که قابلیت اتصال به یکی از پورت های کامپیوتر را دارد برنامه نوشته شده روی آی سی انتقال پیدا می کند و در Rom (حافظه) آن ذخیره می شود این آی سی ها حکم یک کامپیوتر در ابعاد کوچک و قدرت کمتر را دارند و بیشتربرای کنترل استفاده می شود و طبق الگوریتم برنامه  آن عمل می شود این آی سی ها برای کنترل ربات ها تا استفاده در کارخانه صنعتی کاربرد دارند. برای شروع کار با یک میکروکنترلر که در رباتیک کاربردهای فراوانی از آن را خواهید دید در ابتدا لازم است یک زبان برنامه نویسی مانند C , Basic را بیاموزید.

معرفی میکروکنترلر 8051

8051  اولین میکروکنترلر ساخت دست بشر است که در ابتدا توسط شرکت بزرگ intel ساخته شد. اما بعدا intel این امکان را به دیگر شرکت ها داد که این میکروکنترلر را تولید کنند و شرکت هایی مانند ATMEL , PHILIPS, SIEMENS , DALLAS و... که از بزرگ ترین شرکت های دنیا هستند به تولید این میکروکنترلر پرداختند یکی از شرکت هایی که به صورت گسترده به تولید این تراشه پرداخت ATMEL بود که مدل های مختلف میکروکنترلر را ساخت و محصلات آن در سراسر جهان و در ایران یافت می شود. اما زمانی که ما به صورت کلی سیر پیشرفت این نوع میکروکنترلر را در نظر می گیریم متوجه می شویم اولین میکروکنترلر هایی که ساخته شد با جدیدترین میکروکنترلرهای 8051 که الان تولید می شود پیشرفت زیادی ندارد به طور مثال AT89S5X که میکروکنترلر 8051 جدید ساخت ATMEL است نسبت به مدل های اولیه 8051 پیشرفت آنچنانی ندارد . امکانات این میکرو نسبت به AVR و PIC قابل مقایسه نیست . به صورتی که که همین مدل جدید 8051 تقریبا حافظه ای برابر یک صدم (0.001 ) میکروکنترلر های AVR را دارد و سرعتش 4 برابر کمتر از میکروکنترلر های PIC و 12 بار کمتر از میکروکنترلر های AVR است . از لحاظ امکانات دیگر هم چنین ضعفی احساس می شود. اما برای کارهای ساده تر که پیچیدگی زیادی در آن نباشد به خاطر قیمت بسیار پایینی که این میکروکنترلر دارد بسیار مناسب است . قیمت همین مدل جدید AT89S5X حول و حوش 1000 تومان است که قیمت بسیار مناسبی است.

این میکرو کنترلر از زبان اسمبلی و C پشتیبانی می کند که زبان برنامه نویسی اصلی آن اسمبلی است که نوشتن با این زبان برنامه نویسی نسبت به زبان های برنامه نویسی دیگر هم مشکل تر و هم طولانی تر است. در کل این میکروکنترلر امروزه دیگر توان رقابت با AVR و PIC را دارا نیست و رقابت اصلی بین این دو میکروکنترلر است

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

1- معرفی میکروکنترلرها :

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

2- بخشهای مختلف میکروکنترلر :

میکروکنترلر ها از بخشهای زیر تشکیل شده اند

Cpu واحد پردازش

Alu واحد محاسبات

I /O ورودی ها و خروجی ها

Ram حافظه اصلی میکرو

Rom حافظه ای که برنامه روی آن ذخیره می گردد

Timer برای کنترل زمان ها

و . . .

3- خانواده های میکروکنترلر

خانواده : Pic - AVR - 8051

4- یک میکروکنترلر چگونه برنامه ریزی میشود .

میکرو کنترلر ها دارای کامپایلرهای خاصی می باشد که با زبان های Assembly basic, c می توان برای آنها برنامه نوشت سپس برنامه نوشته شده را توسط دستگاهی به نام programmer که در این دستگاه ای سی قرار می گیرد و توسط یک کابل به یکی از در گاه های کامپیوتر وصل می شود برنامه نوشته شده روی آی سی انتقال پیدا میکند و در Rom ذخیره می شود .


5- با میکرو کنترلر چه کارهایی می توان انجام داد .

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

6- امکانات میکرو کنترلرها :

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

7- شروع کار با میکرو کنترلر:

برای شروع کار با میکرو کنترلر بهتر است که یک زبان برنامه نویسی مثل c یا basic را بیاموزید سپس یک برد programmer تهیه کرده و برنامه خود را روی میکرو ارسال کنید سپس مدار خود را روی برد برد بسته و نتیجه را مشاهده کنید.

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

8- مقایسه خانواده های مختلف میکرو وکنترلرها:

خانواده 8051 :

این خانواده از میکرو کنترولر ها جزو اولین نوع میکرو کنترولر ها یی بود که رایج شده و جزو پیشکسوتان مطرح میشود . معروف ترین کامپایلر برای این نوع میکرو keil یا franklin می باشد میکرو های این خانواده به نوسان ساز نیاز مند هستند و درمقابل خانواده pic یا AVR از امکانات کمتری برخور دار می باشد معروف ترین آی سی ها این خانواده 89S51 یا 89C51 می باشد .

خانواده AVR :

این خانواده از میکرو کنترلرها تمامی امکانات 8051 را دارا می باشد و امکاناتی چون ADC (مبدل آنالوگ به دیجیتال) – نوسان ساز داخلی و قدرت و سرعت بیشتر – EEPROM (حافظه) از جمله مزایای این خانواده می باشد مهم ترین آی سی این خانواده Tiny و Mega است.

خانواده pic :

این خانواده از نظر امکانات مانند AVR میباشد و در کل صنعتی تر است .

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

1- یک میکرو کنترلر را می توان طوری برنامه ریزی کرد که کار چندین گیت منطقی را انجام دهد.

2- تعداد آی سی هایی که در مدار به کار میرود به حداقل میرسد .

3- به راحتی می توان برنامه میکرو کنترلر را تغییر داد و تا هزاران بار میتوان روی میکرو برنامه های جدید نوشت و یا پاک کرد .

4- به راحتی میتوان از روی یک مدار منطقی کپی کرد و مشابه آن را ساخت ولی در صورتی که از میکرو کنترلر استفاده شود و برنامه میکرو را قفل کرد به هیچ عنوان نمی توان از آن کپی گرفت .

http://powercontrol.mihanblog.com/extrapage/795




داغ کن - کلوب دات کام
نظرات()