میکروکنترلر چیست؟ میکروکنترلرهای AVR

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

میکروکنترلرها قطعات الکترونیکی هستند که از یک میکروپروسسور و لوازم جانبی آن مانند
RAM , ROM , I / O , A / D , USART , TIMER تشکیل شده اند.
میکروپروسسور قسمتی از میکروکنترلر است که عملیات پردازش در این قسمت انجام می گیرد وبه اصطلاح cpuنامیده می شود.
Cpu ها دو نوع ساختار دارند.


1-Risc 2- Cisc
نوع اول مبتنی بر تعداد دستورالعمل کم و ترکیبات مختلف آنهاست به این ترتیب انواع کد با سخت افزاری ساده ساخته می شود. نوع دوم مبتنی بر سخت افزارپیچیده تری است و برای هر عملیاتی یک سخت افزار خاص تعبیه شده بر این اساس تعداد دستورات بیشتر می شود و ترکیبات آنها کمتر مورد استفاده قرار می گیرد . نوع اول امروزه بیشتر استفاده می شود و هر چه تعداد دستورالعمل های یک میکرو کمتر باشد مزیتی برای آن محسوب می شود البته کاهش این دستورات نباید کارایی آن را کاهش دهد…میکروکنترلرها امروزه دارای مبدل های آنالوگ به دیجیتال داخلی و نیز EEPROM داخلی برای محافظت از اطلاعات مورد نیاز و انواع مختلفی سخت افزار دارند حتی برای ارتباط با دنیای آنالوگ pwm ها با فرکانس بسیار بالا داخل میکروکنترلرها قرار گرفته اند که خروجی آنالوگ بسیار دقیقی را می توان ازآنها گرفت.
میکروکنترلرها انواع مختلفی دارند سال 1969 اولین میکروکنترلر با نام 8051 از شرکت Intel به بازار وارد شد و به تدریج شرکتهایی مانند Atmel-philips گام به عرصه ساخت 8051 گذاشتند.

PIC ها:
پس از 8051 و رشد آن تا سری 89c51 ,89c52 میکروکنترلرهای دیگری با قابلیت های بیشتری از سوی شرکت میکروچیپ وارد بازار شدند که به pic مشهور شدند تفاوت بسیار زیادی که picها با 8051ها داشتند باعث رشد سریع آنها در انواع صنایع شدند از جمله تفاوت های آنها وجود EEPROMداخلی و A / Dداخلی وخروجی PWM
icsp( in circuit serial programming ) و…می باشند. picها از آی سی های 8 پایه و18 پایه و28 و40 پایه تشکیل شده بودند امروزه picهایی با 128 پین نیز به بازار آمده اند همچنین از مزایای picها وجود کامپایلرهای بزرگی مانند کامپایلر بیسیک Pic Basic Pro وکامپایلر C : C2C ,CCS , Hitech و کامپایلر Asembly :Maple می باشد دیگرمزایای picها نویز پذیری بسیار کم این میکروکنترلر می باشد در محیط های نویز پذیر صنعتی و حتی مخیر صنعتی میکروکنترلرهای 8051 پس از مدتی hangمی کردند و مشکلات بسیاری پدید می آمد ولی picها این مشکل را برطرف کردند در سال 2001 شرکت Atmel میکروکنترلرهای دیگری به نام AVR را به بازار فرستاد که به رقابت با pic پرداخت این محصول به دلیل گذشت زمان و مشخص شدن معایب picهاست مثلا دارای اسیلاتور داخلی است ویا کامپایلرهایی که بسیار پر قدرت با کامپایلرهایی که بسیار پر قدرت با کامپایلرهای pic رقابت می کنند .ولی به دلیل سابقه بیشتر picها ونیز جا افتادن آنها در صنعت امروزه هنوز ازpicها استفاده می گردد و AVR به عنوان میکروکنترلر سمبلیک درآزمایشگاه ها بیشتر استفاده می شود به مرور مزیت AVRها باعث راهیابی آنها به صنعت خواهد شد.اشاره کردیم picها دارای انواع مختلفی با قابلیت های متفاوتی می باشند بر اساس تعداد I /Oمورد نیاز تعداد پایه های pic تعیین می شود مثلا درمداراتی که لازم است pic به عنوان یک حافظه برای قطعه به کار رود تعداد پایه کم نیز این کار را انجام می دهد ولی وقتی بحث LCD , key pad مطرح می شود دیگری 18 پایه نیز کافی نیست و به آی سی بزرگتری نیاز داریم .

AVR چیست؟

یکی از انواع میکروکنترلرهای جدید که در بازار الکترونیک ارائه شده است ، میکروکنترلر های شرکت ATMEL با نام میکروکنترلرهای خانواده AVR می باشد. این میکروکنترلر های هشت بیتی به دلیل قابلیت برنامه نویسی توسط کامپایلر زبان های سطح بالا (HLL) بسیار مورد توجه قرار می گیرند. این میکروکنترلر ها از معماری RISC برخوردارند و شرکت ATMEL سعی نموده است با استفاده از معماری پیشرفته و دستورات بهینه، حجم کد تولید شده را کم و سرعت اجرای برنامه را بالا ببرد. یکی از مشخصات این نوع میکروکنترلر ها دارا بودن 32 رجیستر همه منظوره می باشد. همچنین در این میکروکنترلر ها از حافظه های کم مصرف و غیر فرار FLASH و EEPROM استفاده می شود.
کامپایلر هایی به زبان BASIC و C که زبانهای پرکاربرد در دنیا هستند برای این نوع میکرو ها طراحی شده است و علاوه برآن از زبان اسمبلی نیز همچنان می توان برای برنامه نویسی استفاده کرد. به عنوان مثال کامپایلر BASCOM با زبان BASIC برای برنامه نویسی این نوع از میکروکنترلر ها می تواند مورد استفاده قرار گیرد.
میکروکنترلر های AVR به سه دسته اصلی تقسیم می شوند:
الف) سری MEGAAVR
ب) سری TINYAVR
چ) سری AT90S یا AVR
میکروکنترلر های MEGAAVR
میکروکنترلر های نوع MEGAAVR دارای قابلیت های بیشتری نسبت به دو سری دیگر هستند. در اینجا به بررسی مشخصات و پایه های یکی از میکروکنترلرهای پرکاربرد سری MEGA به نام ATMega32 می پردازیم:

ATMega32:
مهمترین مشخصات این میکروکنترلر 40 پایه عبارت است از:

– کارایی بالا و توان مصرفی کم
– 32رجیستر (ثبات) 8 بیتی
– سرعت با سقف 16 میلیون دستور در ثانیه در فرکانس 16 Mhz
– 32 کیلو بایت حافظه FLASH داخلی قابل برنامه ریزی با قابلیت ده هزار بار نوشتن
-2 کیلو بایت حافظه داخلی SRAM
– 1024 بایت حافظه EEPROM داخلی قابل برنامه ریزی با قابلیت صد هزار بار نوشتن
– قابلیت ارتباط JTAG
– دو تایمر/شمارنده هشت بیتی
– یک تایمر/شمارنده شانزده بیتی
– چهار کانال PWM
– هشت کانال مبدل A / D ده بیتی
– یک مقایسه کننده آنالوگ داخلی
– WATCHDOG قابل برنامه ریزی با اسیلاتور داخلی
– ارتباط سریال برای برنامه ریزی ISP
– USARTسریال قابل برنامه ریزی
– دارای شش حالت SLEEP
– منابع وقفه داخلی و خارجی
– اسیلاتور داخلی RC
– کار با ولتاژ 4.5 تا 5.5
– فرکانس کاری 0 تا 16 مگاهرتز
– 32 خط داده ورودی و خروجی قابل برنامه ریزی
برای پروگرام کردن این آی سی ها از PIN های MISO – MOSI – SCK – RESET – GND -VCC استفاده می شود.
سایر PIN ها هم که به چهار پورت A – D – C – B تقسیم می شوند ، نیز می توان به عنوان خروجی از آن ها استفاده کرد و هم می توان به عنوان ورودی از آنها استفاده کرد. (البته این کار بستگی به برنامه نویس دارد).

ATMEGA16 :

این آی سی نیز از خانواده ی MEGAAVR می باشد. و دارای ویژگی های زیر است :

– دارای سوکت های EEPROM از نوع 12C می باشد.
– مبدل پورت FM232BM USB به UART است . که درایور PC به صورت
مجازی یک پورت RSMAX232 را می سازد و به آن اجازه می دهد که از نرم افزار
RS232 برای ارتباط با این برد استفاده شود.
– دارای مدار اسیلاتور 8 مگا هرتزی است.
– دارای دکمه RESET و دکمه ی GENERAL_PURPOSE است .
– گذرگاه GND و VCC را دارد.
– دارای ابعاد 100*80 mm (3.9 *15 “) می باشد.

AVR 8-Bit RISC :
شرکت Atmel 5 میکروکنترلر 8 بیتی AVR جدید با توان مصرفی بسیار پایین برای استفاده در مدارات با تعداد کدهای بالا و اینترفیسینگ زیاد عرضه نموده است.
این میکروکنترلر ها با نام های ATmega640 ، ATmega1280 ، ATmega2560 ، ATmega1281، ATmega2561 عرضه شده است و دارای 64 تا 256 کیلو بایت flash و8 کیلو بایت RAM به صورت داخلی می باشد.
این میکروهای جدید مدارات جانبی میکروها را با توجه به مدارات داخلی خود کاهش داده است که از آن جمله می توان به وجود یک اسیلاتور RC 8 مگا هرتزی در داخل خود که باعث حذف اسیلاتور خارجی گشته است را نام برد ؛ از دیگر قابلیت های جالب این میکرو مصرف بسیار پایین آن می باشد این میکرو که با 1.5 ولت کار می کند در حالت power down تنها 100 نانو آمپر مصرف می کند که باعث افزایش عمر باتری خواهد شد.
مدل 100 پین این میکرو ها داراری 4 کانال UART و 16 عدد A/D می باشد.
قیمت این میکرو ها برای 10000 عدد برای ATmega640، 4.75$ ؛ ATmega1281، 6.00$؛ ATmega1280 ، 6.40$ ؛ ATmega2561، 7.50$ و ATmega2560 ، 7.80$ می باشد.
این نوع میکروکنترلر یک هسته دارد که دستورالعمل ها را به صورت چرخشی اجرا می کند. و ساختار آن نیاز به تجهیزات خارجی دارد . مانند اسیلاتور داخلی ، تایمر ها ، پهنای پالس و…دستورالعمل های این میکروکنترلر در کاهش اندازه ی برنامه هایی که کد آنها به صورت زبان های اسمبلی یا بیسیک نوشته شده ، نقش چشمگیری دارند.
با یک تراشه ی قابل برنامه ریزی از نوع EEPROM این میکروکنترلر از بهترین نوع جهت هزینه ی بهینه می تواند در نظر گرفته شود.

AT89LP:
خانواده AT89LP شامل یک میکروکنترولر 8 بیتی کم مصرف و با کارایی بالا با یک CPU 8051 بهبود داده شده است. در هسته 8051 قدیمی، هر واکشی دست کم به 6 سیکل کلاک نیاز داشت. خانواده LP به منظور بهبود هسته ساخته شده که در هر سیکل کلاک قادر است یک بایت تکی را از حافظه واکشی کند.
در CPU خانواده 89LP ، دستورالملها تنها به 1 الی 4 سیکل کلاک نیاز دارند و توان عملیاتی را 6 الی 12 برابر بیشتر نسبت به 8051 استاندارد مهیا میکنند. هفتاد درصد ازدستوراتی که صرفا نیازمند به چند کلاک سیکل هستند بایتهایی برای واکشی دارند بشیتر دستورات باقی مانده تنها به یک کلاک اضافی نیاز دارند. هسته CPU بهبود داده شده قادر به تحویل توان عملیاتی 20MIPS است در حالیکه CPU 8051 قدیمی تنها میتواند 4MIPS در همان مصرف جریان تحویل دهد. بطور معکوس، در همان توان عملیاتی در 8051 قدیمی، هسته CPU جدید در یک سرعت خیلی پاییین تر فعالیت میکند و به موجب آن مصرف انرژی را بسیار کاهش میدهد. با توانایی تحویل توان عملیاتی 20MIPS در فرکانس کاری 20MHz ، این دستگاهها قادرند تا یک ولتاژ پایین 2 ولتی عمل کنند.
میکروکنترلرهای 8051 تک سیکل ATMEL برای کاربردهای نهایی ، که نیاز به مصرف توان پایین و در بعضی مواقع دستیابی به کارایی بهینه دارند طراحی میشوند. میکروکنترلرهای خانواده AT89LP دارای قابلیت برنامه ریزی حافظه Flash در مدار، حافظه Flash داخل تراشه، PWM ، مبدل آنالوگ به دیجیتال 10 بیتی، مقایسه کننده آنالوگ ، تایمر Watch Dog ، رابط SPI ، هستند که هزینه سیستم را کاهش میدهند و زمان سریعتری را برای عرضه فراهم میسازند.


۱ Comment

توفیق

فروردین ۶, ۱۴۰۰ at ۱۰:۳۸ ب.ظ

AVR

ارسال نظرات