کنترل از راه دور در کامپیوتر ها

مقدمه:
گرچه كامپيوترهاي تنها چند دهه‎اي است كه با ما همراهند با اين حال تأثير عميق آنها بر زندگي ما به تأثير تلفن، اتومبيل و تلويزيون رقابت مي‎كند. همگي ما حضور آنها را احساس مي‎‏كنيم چه برنامه‎نويسان كامپيوتر و چه دريافت كنندگان صورت حسابهاي ماهيانه كه توسط سيستمهاي كامپيوتري بزرگ چاپ شده و توسط پست تحويل داده مي‎شود. تصور ما از كامپيوتر معمولاً «داده‎پردازي» است كه محاسبات عددي را بطور خستگي ناپذيري انجام مي‎دهد.

ما با انواع گوناگوني از كامپيوترها برخورد مي‎كنيم كه وظايفشان را زيركانه و بطرزي آرام، كارا و حتي فروتنانه انجام مي‎دهند و حتي حضور انها اغلب احساس نمي‎شود. ما كامپيوترها را به عنوان جزء مركزي بسياري از فرآورده‎هاي صنعتي و مصرفي از جمله در سوپر ماركت‎ا داخل صندوق‎هاي پول و ترازوها، در خانه‎ها، در اجاق‎ها، ماشين‎هاي لباسشوئي، ساعت‎هاي اداري داراي سيستم جز دهنده و ترموستات‎ها، در وسايل سرگرمي همچون اسباب بازي‎ها، VCRها، تجهيزات استريو و وسايل صوتي؛ در محل كار در ماشين‎هاي تايپ و فتوكپي و در تجهيزات صنعتي مثل مته‎هاي فشاري و دستگاههاي حروفچيني نوري مي‎يابيم. د اين مجموعه‎ها كامپيوترها وظيفه كنترل را در ارتباط با دنياي واقعي براي روشن و خاموش كردن وسايل و نظارت بر وضعيت آنها انجام مي‎دهند.

ميكروكنترلرها (بر خلاف ميكرو كامپيوترها و ريزپردازنده‎ها) اغلب در چنين كاربردهايي يافت مي‎شوند.
با وجود اينكه بيش از بيست سال از تولد ريزپردازنده نمي‎گذرد تصور وسايل الكترونيكي و اسباب بازيهاي امروزي بدون آن كار مشكل است. در سال ۱۹۷۱ شركت اينتل ۸۰۸۰ رابه عنوان اولين ريزپردازندة موفق عرضه كرد. مدت كوتاهي پس از آن موتورلا، RCA و سپس Mos Technology و Zilog انواع مشابهي را به ترتيب به نامهاي ۶۸۰۰، ۱۸۰۱، ۶۵۰۲، ۸۰Z عرضه كردند گرچه اين مودارهاي مجتمع به خودي خود فايده چنداني نداشتند

اما به عنوان بخشي از يك كامپيوتر تك بورد (SBC) به جزء مركزي فرآورده‎هاي مفيدي براي آموزش طراحي با ريزپردازنده‎ها تبديل شدند. از اين SBCها كه به سرعت به آزمايشگاههاي طراحي در كالج‎ها، دانشگاهها و شركتي‎هاي الكترونيك راه پيدا كردند مي‎توان براي نمونه از D2 موتورولا KIM-1 ساخت Mos Technology و ۸۵-SDK متعلق به شركت اينتل نام برد.

ميكروكنترلرها قطعه‎اي شبيه به ريزپردازنده است در سال ۱۹۷۶ اينتل ۸۷۴۸ را به عنوان اولين قطعه خانوادة ميكروكنترلرهاي TM 48-MCS معرفي كرد. ۸۷۴۸ با ۱۷۰۰۰ترانزيستور در يك مدار مجتمع شامل يك CPU، ۱كيلو بايتي EPROM، ۶۴بايت RAM، ۲۷ پايه I/O و يك تايمر ۸بيتي بود. اين IC و ديگر اعضاي TM 48-MCS كه پس از آن آمدند خيلي زود به استاندارد صنعتي در كاربردهاي كنترل گرا تبديل شدند. جايگزين كردن اجزاء الكترو مكانيكي در فرآورده‎هايي مثل ماشينهاي لباسشويي و چراغهاي راهنمايي از ابتداي كار يك كاربرد مورد توجه براي اين ميكرو كنترلرها بودند و همين طور باقي ماندند. ديگر فرآورده‎هايي كه در آنها مي‎توان ميكروكنترلر را يافت عبارتند از اتومبيل‎ها تجهيزات صنعتي، وسيال سرگرمي و ابزارهاي جانبي كامپيوتر.
توان ابعاد و پيچيدگي ميكروكنترلرها با اعلام ساخت ۸۰۵۱، يعني اولين عنصر خانوادة ميكرو كنترلراي TM51-MCS در سال ۱۹۸۰ توسط اينتل پيشرفت چشمگيري كرد. در مقايسه با ۸۰۴۸ اين قطعه شامل بيش از ۶۰۰۰۰ترانزيستور، ۴k بايت Rom، ۱۲۸ بايت RAM، ۳۲ خط I/O يك درگاه سريال و دو تايمر ۱۶ بيتي است. كه از لحاظ مدارات داخلي براي يك IC بسيار قابل ملاحظه است. امروزه انواع گوناگوني از اين IC وجود دارد كه بصورت مجازي اين مشخصات را دو برابر كرده‎اند. شركت زيمنس كه دومين توليد كنندة قطعات است (TM 51-MCS)، ۸۰۵۱۵SAB وقفه و يكي مبدل آنالوگ به ديجيتال با ۸ كانال ورودي عرضه كرده است.
خانواده ۸۰۵۱ به عنوان يكي از جامع ترين و قدرتمندترين ميكروكنترلرهاي ۸ بيتي شناخته شده و جايگاهش را به عنوان يك ميكروكنترلر مهم براي سالهاي آينده يافته است.
اين بخش با بحثي در مورد نقش و اهميت ميكروكنترلرها در زندگي روزمره و نياز به ميكروكنترلرها و مقايسه آنها با ميكرو پروسسورهاي همه منظوره‎اي چون پنتيوم و ديگر ميكرو پروسسورها آغاز شده است.

ميكروكنترلرها در برابر ميكرو پروسسورهاي همه منظوره
تفاوت بين يك ميكرو پروسسور و يك ميكروكنترلر چيست؟ منظور از يك ميكروپروسسور ريز پردازنده ميكروي پروسسورهايي از خانوادة x86 اينتل مثل ۸۰۳۶,۸۰۲۸۶,۸۰۸۶ و يا ۶۸۰۴۰,۶۸۰۳۰,۶۸۰۲۰خانواده‎هائي از اين قبيل است اين ميكروپروسسورها فاقد RAM و پورت‎هاي ROM در درون خود تراشه هستند. به اين دليل به آنها «ميكروپروسسورهاي همه منظوره» مي‎گويند.

طراح سيستمي كه از ميكرو پروسسور همه منظوره‎اي چون پنتيوم، ۶۸۰۴۰ استفاده مي‎كند، بايد در خارج از آن RAm ROM,پورتهاي I/O و تايمرها را اضافه نمايد تا سيستمي قابل كار ساخت شود. اگرچه افزايش RAM Rom, پورتهاي I/O موجب حجيم شدن و گرانتر شدن سيستم‎ها مي‎گردد، ولي به قابليت انعطاف آنها افزوده مي‎شود از جمله اينكه طراح مي‎تواند روي مقدار ROM, ROM پورتهاي I/O بر حسب نوع كاربرد تصميم‎گيري و اعمال نظر نمايد. اين توانمندي در ميكروكنترلرها امكان پذير نيست. يك ميكروكنترلر داراي يك CPU به همراه مقدار ثابتي از ROM,RAM پورتهاي I/O و تامير در درون خود مي‎باشد.

به بيان ديگر، پروسسور، ROM,RAM، پورتهاي I/O و تايمر همگي در يك تراشه جاي داده شده‎اند، بنابراين طراح نمي‎تواند يك حافظه، I/O يا تايمري را بدون گسترش لازم آن از بيرون اضافه كند. مقدار ثابت RAM,ROM و مقدار پورتهاي تثبيت شده در ميكروكنترلرها، آنها را براي كاربردهائي كه قيمت و محفظه در آنها بحراني است، ايده‎آل كرده است.

مقايسة سيستم ميكرو پروسسور و ميكرو كنترلر:
الف) ميكرو پروسسور ميكروكنترلر: ب) ميكروكنترلر

گذرگاه آدرس

ميكرو كنترلها و سيستم‎هاي تك منظوره:
در مقالاتي كه ميكرو پروسسورها مطرح مي‎شوند، اغلب عبارت سيستم تك منظوره را ملاحظه مي‎كنيم. ميكرو پروسسورها و ميكروكنترلرها بطور گسترده‎اي در توليد سيستم‎هاي تك منظوره بكار مي‎روند. يك محصول تك منظوره از يك ميكروپروسسور (يا ميكرو كنترلر) براي انجام فقط و فقط يك كار استفاده مي‎كند. يك چاپگر نمونه‎اي از يك سيستم تك منظوره است. زيرا پروسسور داخل آن فقط يك كار را انجام مي‎دهد و آن اين است كه داده را بدست آورده و آن را چاپ كند.

اين كار را با يك PC مبتني بر پنتيوم (مانند هر PC سازگار با x86 IBM) مقايسه نماييد. PC مي‎تواند براي هر كاربردي مانند پردازشگرهاي كلمات، مراكز چاپ، پايانه، ليست‎هاي بانك، بازيهاي ويدئويي، سرويس‎دهندة شبكه و پايانه اينترنت مورد استفاده قرار گيرد، براي انواع كاربردها مي‎توان به راحتي برنامه را در PC بار كرده و آن را اجرا كرد.

البته دليل قابليت اجراي كارهاي متنوع در PC،‌اين است كه داراي حافظه RAM و سيستم عاملي است كه نرم افزار كاربردي را در RAM بار كرده و اجازه اجراي آن را به PC مي‎دهد. در يك سيستم تك منظوره، تنها يك نرم افزار كاربردي وجود دارد و معمولاً در ROM سوزانده مي‎شود. يكPC x86 ممكن است به وسايل تك منظوره‎اي مانند صفحه كليد، چاپگر، مودم، كنترل‎گر ديسك، كارت صدا، راه انداز CD-Rom، ماوس و غيره متصل باشد. هر يك از اين وسايل جانبي در داخل خود داراي يك ميكروكنترلر براي انجام كار خاص مي‎باشند. مثلاً در داخل هر ماوس يك ميكرو كنترلر وجود دارد كه وظيفه‎اش يافتن مكان ماوس و ارسال آنها به PC است. جدول زير بعضي از محصولات تك منظوره را نشان مي‎دهد.

منزل خودكار
لوازم خانگي كامپيوتر
ارتباطات دروني كنترل موتور
تلفن كيسه هوا
دزدگير وسايل اندازه‎گيري
منشي تلفن سيستم حفاظتي
ماشين‎هاي خياطي كنترل انتقال
ورود بدون كليد
اداري
فاكس
مايكروويو
دستگاه فتوكپي
چاپگر ليزري
چاپگر رنگي
احضار از بلندگو

انتخاب يك ميكروكنترلر
چهار نوع ميكروكنترلر ۸بيت مهم وجود دارد كه عبارتند زا:
۶۸۱۱ ازموتورولا ۸۰۵۱- ازاينتل Z8- از زايكوگ PIC 16x از شركت ميكروچيپ تكنولوژي هر يك از ميكرو كنترلرهاي فوق مجموعة دستورات و مجموعه ثباتهاي خاص خود را دارد، بنابراين با يكديگر سازگار نيستند.

برنامه‎اي كه بر روي يك ازآنها نوشته شود، بر روي ديگري قابل اجرا نيست. ميكروكنترلرهاي ۱۶ و ۳۲ بيتي هم وجود دارند كه به وسيلة سازندگان مختلف ساخته شده‎اند. با اين تنوع در ميكرو كنترلرها، طراح بايد كداميك را انتخاب كند؟ سه روش براي اين انتخاب در زير تشريح شده است:
(۱) برآورده كردن نيازهاي محاسبات كار بطور موثر و مقرون به صرفه.

(۲) در دسترس داشتن نرم‎افزارهاي كمكي مانند كامپايلرها، اسمبلرها و عيب ياب‎ها
(۳) منابع گسترده و قابل اعتماد براي ميكروكنترلرها
اكنون هر يك از موارد فوق را به تفصيل بررسي مي‎كنيم:
روش انتخاب ميكروكنترلر:
۱-اولين و قديمي‎ترين روش انتخاب ميكروكنترلر اين است كه نيازهاي سيستم دقيقاً مشخص و هزينه آن هم مقرون به صرفه باشد. ديگر موارد قابل بررسي عبارتند از:
الف) سرعت. بالاترين سرعتي كه ميكروكنترلر پشتيباني مي‎كند چيست؟
ب) بسته‎بندي. آيا بسته‎بندي از نوع DIP چهل پايه است، از نوع AFP (بستة همسطح) تهيه شده است، و يا در ديگر انواع بسته‎بندي ارائه شده است؟ بسته‎بندي به دليل فضاي اشغالي مونتاژ و ساخت نمونة نهايي اهميت خاصي دارد.

پ) توان مصرفي. اين فاكتور خصوصاً براي محصولاتي كه با باطري كار مي‎كنند، اهميت دارد.
ت) مقدار RAM و ROM در تراشه
ث) تعداد پايه‎هاي I/O و تايمر در تراشه
ج) به چه سادگي به ويرايش بعدي از نظر كارايي و توان مصرفي تبديل مي‎شود.