میکرو کنترلرها
میکرو کُنترولر ( Microcontroller) گونهای ریزپردازنده است که دارای حافظهٔ دسترسی تصادفی (RAM) و حافظهٔ فقطخواندنی (ROM)، تایمر، پورتهای ورودی و خروجی (I/O) و درگاه ترتیبی (Serial Port پورت سریال)، درون خود تراشه است، و میتواند به تنهایی ابزارهای دیگر را کنترل کند.
به عبارت دیگر یک میکروکنترلر، مدار مجتمع کوچکی است که از یک CPU کوچک و اجزای دیگری مانند تایمر، درگاههای ورودی و خروجی آنالوگ و دیجیتال و حافظه تشکیل شدهاست.
در واقع یک ریزپردازنده درون میکروکنترولر قرار گرفتهاست که با استفاده از آن میتواند محاسبات منطقی و حسابی را انجام دهد.
وجود RAM و ROM و پورتهای I/O در میکروکنترلرها آنها را یک انتخاب ایدهآل برای کاربردهایی میکند که قیمت و اندازه در آنها مهم است. در بسیاری از کاربردها مثل کنترل از راه دور تلویزیون نیازی به محاسبات سنگین در حد یک ۴۸۶ یا حتی ۸۰۸۶ وجود ندارد. در این گونه موارد و بسیاری دیگر از کاربردها فضای مورد استفاده توان مصرفی و قیمت هر واحد مهم تر از قدرت محاسبات است. در این گونه موارد اغلب لازم است تعدادی I/O خوانده شده و بیتهای مشخصی را خاموش یا روشن کند. به همین دلیل این گونه پردازندهها را (IBP (ITTY-BITTY PROCESSOR نیز مینامند.
میکروکنترلرها عموماً برای کاربردهای کوچک طراحی میشوند، بنابراین برخلاف ریزپردازندهها در اینجا مهمترین مسائل، سادگی و مصرف کم توان است.
اولین میکرکنترلر جهان
اولین میکرکنترلر جهان، TMS 1000 بود که در سال ۱۹۷۱ توسعه یافت و در سال ۱۹۷۴ به صورت تجاری منتشر شد. دو مهندس به نام گری بون و مایکل کوکران آن را توسعه دادند. این یک کامپیوتر کوچک در یک IC است. آنها در انواع ۸ و ۳۲ بیت تولید میشوند که هر کدام خصوصیات و ویژگیهای خاص خود را دارند.
اجزا میکرو کنترلرها
یک میکروکنترلر از بخشهایی مانند پردازنده، RAM، ROM و یک سری پایانه (پورت، درگاه) تشکیل شدهاست.
از سوی دیگر، از آنجا که میکروکنترلر معمولاً برای مقاصد کنترلی استفاده میشوند، نیاز به برقراری ارتباط با دستگاه تحت کنترل خود دارند. اما از آنجا که اکثر سیگنالهای لازم برای این منظور سیگنالهای آنالوگ هستند، باید ابتدا این سیگنالها به صورت دودویی تبدیل شوند تا برای پردازنده قابل درک باشند. این کار توسط مبدل آنالوگ به دیجیتال صورت میگیرد.
همچنین در برخی از میکروکنترلرها مبدل دیجیتال به آنالوگی هم وجود دارد که امکان فرمان دادن میکروکنترلر به دستگاههای با ورودی آنالوگ را فراهم میکند.
از دیگر اجزای معمول و پرکاربرد در میکروکنترلرها، تایمرها هستند. تایمرها عموماً از یک شمارنده تشکیل میشوند که پس از تعداد مشخصی از شمارش، یک وقفه تولید میکنند که میتواند برای انجام متوالی یک کار مورد استفاده قرار گیرد.
بسیاری از میکروکنترلرها از واحد تولید مدولاسیون عرض پالس نیز برخوردارند. این واحد به خصوص در کاربردهای الکترونیک قدرت و کنترل موتور و نیز به عنوان مبدل دیجیتال به آنالوگ کاربرد دارد.
میکرو کنترلرهای رایج در ایران
از مهمترین و بزرگترین تولیدکنندگان میکرو کنترلرها میتوان از شرکت اَتمِل (Atmel) نام برد که در حال حاضر سری ایویآر و ۸۰۵۱ میکروکنترلرهای این شرکت در ایران به دلیل سهولت استفاده مورد توجهاست.
برنامهریزی میکروکنترلرهای AVR بیشتر با زبان C و با کامپایلر codevision یا کامپایلر Atmel studio ، یا با زبان بیسیک و توسط نرمافزار BASCOM و یا با زبان اسمبلی انجام میشود.
یکی دیگر از تولیدکنندگان بزرگ میکروکنترلرها شرکت Microchip است که میکروکنترلرهای این شرکت با نامهای تجاری PIC و dsPIC نیز از محبوبیت زیادی برخوردار است.
شرکتهای بزرگ دیگری نیز در زمینه تولید میکروکنترلر فعالیت میکنند که از آن جمله میتوان بهTI، موتورولا و فیلیپس اشاره کرد. شرکت intel هم نقش بسیار مهمی در تولید میکروکنترلرهای خانوادهٔ ۸۰۵۱ دارد.
البته اخیراً با قدرتنمایی میکرو کنترلرهای آرم، این میکروکنترلرهای ۳۲ بیتی با شدت بسیار زیادی در حال فراگیر شدن است و از رشد بسیار زیادی در بازار برخوردار است. میکروکنترلرهای آرم موجود در ایران توسط سه شرکت انایکسپی، اتمل و ST تولید میشوند، که در این میان سهم میکروکنترلرهای ST بیشتر است.
تفاوت میکروکنترولر و ریزپردازنده
تفاوت میکروکنترلر و میکروپروسسور چیست؟
۱. تفاوت اصلی در هر دوی آنها وجود تجهیزات جانبی خارجی متفاوت در هر کدام است. به این صورت که در میکروکنترلرها RAM، ROM و EEPROM تعبیه میکنند در حالی که در ساخت میکروپروسسورها از مدارهای خارجی استفاده میکنند.
۲. در حالی که که همهی وسایل جانبی میکروکنترلر به صورت واحد در این تراشه به کار رفته و فشرده شده است، اما در میکروپروسسور این وسایل جانبی بزرگ هستند.
۳. برای اینکه ساخت میکروکنترلرها ارزانتر تمام شود در ساخت آنها از فناوری اکسید فلز نیمه هادی مکمل استفاده شده است. علاوه بر این، برنامه های ساخته شده با میکروکنترلرها ارزان تر هستند، زیرا آنها نیاز به اجزای کوچکتر خارجی دارند، در حالی که هزینه های کلی سیستم های ساخته شده با میکروپروسسور ها به دلیل استفاده از تعداد زیادی از اجزا و لوازم جانبی خارجی مورد نیاز برای همچنین سیستمهایی بالا است.
۴. سرعت پردازش میکروکنترلرها حدود ۸ مگاهرتز تا ۵۰ مگاهرتز است، اما سرعت پردازش میکروپروسسورها بالاتر از ۱ گیگاهرتز است، بنابراین عملکرد و کارکرد آنها بسیار سریعتر از میکروکنترلرها است.
۵. میکروکنترلرها جمع و جور هستند، بنابراین استفاده از آنها برای محصولات و تجهیزات کوچک مناسبتر و کارآمدتر است. در حالی که میکروپروسسورها بزرگ هستند و برای محصولات و تجهیزات بزرگتر به کار میروند
۶. کارکرد و عملکرد میکروکنترلرها محدود و ساده است. در حالی که کارکرد و عملکرد میکروپروسسورها به طور کلی پیچیدهتر هستند. مانند توسعه نرم افزار، توسعه بازی، وب سایت، اسناد و غیره، بنابراین نیاز به حافظه و سرعت بیشتری دارند، به همین دلیل است که ROM، RAM خارجی با آن استفاده میشود.
۷. میکروکنترلرها بر اساس مدل هاروارد ساخته شدهاند که حافظه برنامه و حافظه دیتا در آنها جداگانه هستند در حالی که میکروپروسسورها بر پایه مدل فون نویمان است که برنامه و دادهها در همان حافظه ذخیره میشود، ساخته شدهاند.
کاربرد میکرو کنترلرها
میکرو کنترلر برای کاربردهایی که در آنها قیمت و اندازه سیستم مهم است، مناسب است. زیرا اضافه کردن حافظه، پورت I/O تایمرها و مدار واسط لازم به میکرپروسسور سبب افزایش قیمت و اندازه سیستم میشود.
میکروکنترلرها بهطور گستردهای در تولید سیستمهای تکمنظوره به کار میروند. منظور از سیستم تکمنظوره سیستمی است که از میکرو کنترلر یا میکرپروسسور فقط برای یک کار استفاده میکند. مانند پردازنده درون یک موس که تنها به منظور یافتن مکان اشاره گر موس و ارسال آن به PC برنامهریزی شدهاست. این سیستمها در مقابل سیستمهای چند منظوره قرار میگیرند. که نمونه بارز آن یک PC است که میتواند برای کاربردهای متعدد و گوناگونی همچون واژهپردازی، بازیهای ویدئویی، سرویس شبکه و … مورد استفاده قرار گیرد.
این توانایی PC در اجرای کارهای گوناگون به دلیل وجود سیستم عاملی است که نرمافزار کاربردی را در RAM بار می کند تا PC بتواند آن را اجرا کند. اما در یک سیستم تکمنظوره تنها یک نرمافزار کاربردی موجود است که معمولاً درROM نوشته میشود.
چند نمونه ساده از وسایلی که در ساخت آنها از میکروکنترلرها استفاده شدهاست، عبارت اند از کنترل از راه دور تلویزیون، تلفن، دوربین فیلمبرداری، فاکس، چاپگر، دستگاه فتوکپی،سیستمهای حفاظتی، دزدگیر و سیستمهای کنترل صنعتی.
بهطور کلی میتوان کاربرد میکروکنترلرها را در طراحی مدارهای کنترل و اتوماسیون خلاصه کرد