بخشی از مقاله
مقدمه :
گر چه كامپيوترها تنها چند دهه است كه با ما همراهند .,با اين حال تاثيرعميق آنها بر زندگي ما با تاثير تلفن , اتومبيل, و تلويزيون رقابت ميكند. ما با انواع گوناگوني از كامپيوترها برخورد مي كنيم كه وظايفشان را زيركانه و به طرزي آرام, كارا و فروتنانه انجام مي دهند و حتي حضور آنها اغلب احساس نمي شود.
ما كامپيوترها را به عنوان جز مركزي بسياري از فرآورده هاي صنعتي و مصرفي از جمله در ماشينهاي لباس شويي , ساعتهاي اداري سيستم هوشيار, وسايل سرگرمي همچون اسباب بازي, تجهيزات صوتي, ماشينهاي تايپ و فتوكپي و تجهيزات صنعتي مانند PLC, CLC و مته هاي فشاري مي يابيم. در اين مجموعه ها, كامپيوترها وظيفه كنترل را در ارتباط با دنياي واقعي براي روشن و خاموش كردن وسايل و نظارت بر وضعيت آنها انجام مي دهند. ميكروكنترلرها بر خلاف ميكروكامپيوترها و ريز پردازنده ها, اغلب در چنين كاربردهايي يافت ميشوند.
توان, ابعاد و پيچيدگي ميكروكنترلرها با اعلام ساخت 8051 يعني اولين عضو خانواده ميكروكنترلرهاي Mcs-51 در سال 1980 توسط اينتل پيشرفت چشم گيري كرد. امروزه انواع گوناگوني از IC وجود دارند.
شكل صفحه بعد براي نشان دادن و روشن ساختن تفاوت بين ميكروكنترلها و ريزپردازنده ها رسم شده است. در حالي كه ريزپردازنده يك CPU ي تك تراشه اي است، ميكروكنترلر در يك تراشه واحد شامل CPU و بسياري از مدارات لازم براي يك سيستم ميكروكامپيوتري كامل مي باشد. اجزاي داخل خط چين در شكل زير بخش كاملي از اغلب IC هاي ميكروكنترلر مي باشند. علاوه بر CPU ميكروكنترلرها شامل RAM,ROM يك رابط سريال، يك رابط موازي، تايمر و مدارات زمان بندي وقفه مي باشند كه همگي در يك IC قرار دارند. البته مقدار RAM روي تراشه حتي به ميزان آن در يك سيستم ميكروكامپيوتري كوچك هم نمي رسد اما آن طور كه خواهيم ديد اين مساله محدوديتي ايجاد مي كند زيرا كاربردهاي ميكروكنترلر بسيار متفاوت است.
يك ويژگي مهم ميكروكنترلرها، سيستم وقفه موجود در داخل آنهاست. ميكروكنترلرها به عنوان ابزارهاي كنترل گرا اغلب براي پاسخ بي درنگ به محركهاي خارجي (وقفه ها) مورد استفاده قرار مي گيرند.
البته اغلب ريزپردازنده ها مي توانند سيستم وقفه قدرتمند را به اجرا بگذارند. اما براي اين كار معمولاً نياز به اجراي خارجي دارند. مدارات روي تراشه يك ميكروكنترلر شامل تمام مدارات مورد نياز براي به كارگيري وقفه ها مي باشد.
ميكروكنترلها پردازنده هايي اختصاصي هستند. آنها به خودي خود در كامپيوترها به كار نمي روند، بلكه در فرآورده هاي صنعتي و وسايل مصرفي مورد استفاده قرار مي گيرند. استفاده كنندگان اين فرآورده ها اغلب از وجود ميكروكنترلها كاملاً بي اطلاع هستند. از ديد آنها اجزاي داخلي وجود دارند اما جزو جزئيات بي اهميت طراحي به شمار مي روند. براي مثال اجاق هاي مايكروويو،
ترموستات هاي قابل برنامه ريزي، ترازوهاي الكترونيكي و حتي خودروها را مي توانيد در نظر بگيريد.قسمت الكترونيكي هر يك از اين فرآورده ها عموماً شامل ارتباط ميكروكنترلر با كليدهاي فشاري، سوئيچ ها، وسايل هشدار دهنده و لامپ هاي روي يك تابلو مي باشد. در نتيجه به استثناء برخي امكانات اضافي، طرز استفاده آنها با فرآورده هاي الكترومكانيكي قبلي تفاوتي نكرده است و ميكروكنترلر آنها از ديد استفاده كنندگان مخفي است.
برخلاف سيستم هاي كامپيوتري كه توسط قابليت برنامه ريزي و دوباره برنامه ريزي شدن، باز شناخته مي شوند، ميكروكنترلر ها يك بار براي هميشه وبراي يك كار برنامه ريزي مي شوند. اين مقايسه به يك تفـاوت اسـاسي در معماري اين دو سيستم منجر مي شود. سيستم هاي كامپيوتري نسبت RAM به ROM بالايي دارند و برنامه هاي كاربران در يك فضاي نسبتاً بزرگ RAM اجرا مي شود در حالي كه روال هاي ارتباط با سخت افزار در يك فضاي كوچك ROM اجرا مي گردد.
از طرف ديگر ميكروكنترلرها نسبت ROM به RAM بالايي دارند، برنامه كنترلي آنها كه شايد نسبتاً بزرگ هم باشد در ROM ذخيره مي شود، در حالي كه RAM فقط براي ذخيره موقت مورد استفاده قرار مي گيرد. از آنجا كه برنامه كنترلي براي هميشه در ROM ذخيره مي شود در مرتبه ميان افزار قرار مي گيرد، يعني چيزي بين سخت افزار (مدارهاي واقعي) و نرم افزار (برنامه هايي در RAM كه هنگام خاموش شدن سيستم پاك مي شوند).
تفاوت بين سخت افزار ونرم افزار تا حدي شبيه به تفاوت بين يك صفحه كاغذ (سخت افزار) و كلمات نوشته شده روي آن (نرم افزار) مي باشد. ميان افزار را مي توان به صورت فرمهاي استانداردي كه براي يك كاربر مشخص طراحي و چاپ شده ا ند در نظر گرفت.
با توجه به مطالب بيان شده (نياز به يك سيستم مجتمع آموزشي در جهت ارتقاء عملي دانش پژوهان كشور و معرفي ميكروكنترلرها و نحوه كنترل سخت افزار به وسيله نرم افزار توسط ميكروكنترلر) اين سيستم به عنوان يك ساختار آزمايشي در جهت آشنايي دانش پژوهان به عنوان يك پروژه فارق التحصيلي ارائه شد.
ميكرو پروسسور 8051
معرفي :
اين ميكروكنترلر يك آي سي از خانواده Mcs-51 مي باشد كه توسط شركت اينتل به بازار عرضه شد. ديگر توليد كننده هاي آي سي نظير زيمنس, AMD, فوجيتسو و فيليپس به عنوان توليد كننده ثانويه, آي سي هاي اين خانواده را تحت مجوز اينتل توليد مي كنند. هر ميكروكنترلر اين خانواده از امكاناتي مناسب همراه با يك سري طراحيهاي مشخص برخوردار است.
مشخصات تراشه8051
1ـ 4 كيلو بايت حافظه ROM و 128 بايت حافظه RAM.
2ـ 4 درگاه ورودي / خروجي 8 بيتي
3ـ 2 تايمر/ شمارنده 16 بيتي
4ـ رابط سريال
5 ـ 64KB فضاي حافظه خارجي براي كد و 64KB فضاي حافظه خارجي براي داده
6 ـ 210 مكان بيتي آدرس پذير در حافظه RAM داخلي
7ـ توانايي انجام عمليات ضرب و تقسيم در 4 ميكروثانيه
حال مطالبي را در مورد مشخصات تراشه 8051 بيان مي كنيم.
1ـ1) يكي از عمده مشخصات ميكروكنترلرها, فضاي حافظه ROM داخلي آنها جهت قراردادن يك برنامه كنترلي در درون آنهاست. اين تراشه داراي 4KB فضاي حافظه ROM داخلي است كه با توجه به اندازه حافظه موجود نياز مبرم بيش از %90 سيستمهاي كنترلي را رفع مي كند.
2ـ1) 32 پايه از 40 پايه تراشه 8051, به عنوان خطوط درگاه ورودي/خروجي هستند.اما تعداد 24 تا از اين خطوط دو منظوره هستند. هر يك از اين پايه ها به عنوان ورودي/ خروجي يا خط كنترل و يا بخشي ا ز گذرگاه آدرس و يا گذرگاه داده به كار ميروند.
در طراحيهاي با كمترين مقدار حافظه از اين درگاهها به عنوان ورودي/ خروجي همه منظوره استفاده مي شود. 8 خط هر درگاه را مي توان به عنوان يك بايت در پردازش با دستگاههاي موازي از قبيل چاپگرها, مبدلهاي ديجيتال به آنالوگ و غيره به كاربرد و يا از هر بيت منحصراً به عنوان رابط دستگاههاي تك بيت مانند سوئيچ ها, LED ها, ترانزيستورها, سولئوئيدها, موتورها و بلندگوها استفاده كرد. ايـن چـهاردرگـاه بـا نـامـهاي اختصاري P0 تا P3 شناخته مي شود.
اشاره اي كوتاه به درگاهها
1 درگاه صفر
درگاهي دو منظوره است كه بر روي پايه هاي 32 تا39 تراشه 8051 قرار گرفته است. اين درگاه در طراحي هاي كوچك به عنـوان درگاه همه منظـوره ورودي/ خـروجـي بـه كار مي رود و در طراحيهاي بزرگ تر با حافظه هـاي خـارجـي بـه عنوان گذرگاه تافته داده و آدرس عمل مي نمايد.
1 درگاه يك
بر روي پايه هاي 1 تا8 درگاهي مخصوص ورودي/خروجي است. پايه هايي كه به صورت P1.0,P1.1,P1.2,... مشخص شده اند, در موقع لزوم براي ربط دستگاههاي خارجي قابل دسترس هستند. هيچ نقش ديگري براي پايه هاي درگاه يك در نظر گرفته نشده است. لذا پايه هاي اين درگاه فقط براي ربط دستگاههاي خارجي به كار مي روند. اما در تراشه 8052پايه هاي p1.1,P1.2 يا به عنوان خطوط ورودي / خروجي و يا به عنوان وروديهاي خارجي به زمان سنج سوم به كار مي روند.
1 درگاه دو
(پايه هاي 21تا28) درگاه دو منظوره اي است كه به عنوان درگاه ورودي/خروجي همه منظوره و يا به عنوان پر ارزش ترين بايت آدرس گذرگاه براي طراحي هاي با حافظه خارجي برنامه يا بيشتر از 256 بايت حافظه خارجي داده به كار مي رود.
1 درگاه سه
روي پـايـه هـاي 10تا 17 نـيز دو منظوره است. اين پايه ها علاوه بر اينكه براي درگاه ورودي/ خروجي هم منظوره مناسب هستند, براي كاربردي چند منظوره نيز طرح شده اند.
3ـ1( يك تايمر از يك سري فليپ فلاپهاي تقسيم كنند، بر دو تشكيل شده است كه يك سيگنال ورودي را به عنوان منبع ساعت دريافت كند. عمـده كـاربـرد تايـمرها بــراي شمـارش اتـفاقات و زمـان سنـجي مـي باشد. نمـونه كـاربـردهـاي تـايمر را مي توان در سيستـمهاي متراژ كننده (Shift encoder) مانند دستگاههاي متراژ موكت و پارچه, دستگاههاي برش سيم و غيره نام برد.
4ـ1) اصولاً ارتباط بين پردازنده ها مي تواند به دو صورت سريال و موازي باشد كه هر يك داراي خواص منحصر به فرد مي باشد.
) ارتباط سريال
ـ انتقال اطلاعات به صورت بيت به بيت است.
ـ فاصله بين سيستمهاي مي تواند حداكثر تا 15 متر (براي اين سيستم) باشد.
ـ دقت در آن بيشتر و خطا در آن كمتر است.
ـ هزينه اجراي سيستم به وسيله ارتباط سريال كمتر است.
) ارتباط موازي
ـ انتقال اطلاعات به صورت بايت به بايت مي باشد.
ـ فاصله بين سيستمها حداكثر در صورت بافر كردن گذرگاه 5 متر مي باشد.
ـ خطا در آن بيشتر است.
ـ هزينه اجراي سيستم به وسيله ارتباط موازي بيشتر است.
بايد توجه داشته باشيم كه 8051 به راحتي مي تواند با يك كامپيوتر Pc و يا يك سيستم كنترلي ديگر در پهناي باند 19200,9600,4800,2400,1200 بيت در ثانيه ارتباط برقرار نمايد.
5ـ1( با توجه به اينكه نحوه ارتباطات ميكروكنترلر با حافظه RAM و ROM خارجي از معماري شركت اينتل استفاده مي كند, 16 پايه از پايه هاي خود را به درگاه آدرس و داده به صورت مشترك اختصاص داده است.
مهمترين قابليت اين ميكروكنترلرها, تفكيك فضاي آدرس دهي RAM و ROM و هر كدام به اندازه 64 كيلوبايت مي باشد, به طوريكه خانه حافظه اي به آدرس 18FA مربوط به حافظه RAM خارجي, متفاوت مي باشد. 8051 اين قابليت را به وسيله دوپايه كنترلي و ارائه مي نمايد.
6ـ1) 8051 شامل 210 مكان بيت آدرس پذير است كه 128 تا از 20H تا 2FH آدرس بايت بوده و مابقي در ثبات هاي ويژه قرار دارند. قابليت دستيابي به تك بيت ها توسـط نرم افزار يكي از شاخص هاي مهم و قدرتمنـد بيشتـر ميـكروكنـترلـرها است. همچنين درگاه هاي ورودي/ خـروجي 8051 به سادگي توسـط رابـط نرم افـزاري با ورودي و خـروجـي هاي تك بيتي بيت آدرس پذيرند.