فصل اول : میکروکنترلر 8051
1-1 دراین بخش اتبدا به اعضای مختلف خانواده میکروکنترلر 8051 و ویژگی های آنها نگاه می کنیم . به علاوه خواهیم دید که سازندگان 8051 چه کسانی هستندوچه نوع محصولی ارائه می دهند .
تاریخچه مختصری از 8051
درسال 1981 شرکت Intel میکروکنترلربه نام 8051 را معرفی کرد . این میکروکنترلردارای 128 بایت 4k , RAM بایت ROM دو تایمر ، یک پورت سریال وچهار پورت موازی ( هریک 8 بیت ) بود که همه آنها دریک تراشه تعبیه شده بودند . زمانی به آن سیستم در یک تراشه می گفتند . 8051 یک پروسسور 8 بیت است ، یعنی CPU هر بار می تواند فقط روی 8بیت داده کار کند . داده های بزرگتر از 8 بیت باید به قطعات 8 بیت بشکنند وسپس بوسیلهCPU پردازش شوند . 8051 کلا دارای چهار پورت I/O با عرض 8 بیت است . شکل 2-1 را ملاحظه کنید گرچه 8051 می تواندحداکثر 64K حافظه ROM درتراشه داشته باشد ، بسیاری از سازندگان فقط 4K بایت را درتراشه کار گذاشته اند .این مطلب بعدا بطور مفصل بحث شده است .
پس از آنکه Intel بشرط حفظ سازگاری با 8051 اجازه تولید را به دیگر سازندگان داد تراشه مذکور بسیار مورد توجه قرار گرفت .این توافق منجر به تولید انواع 8051 با سرعت های متفاوت مقداری ROM در تراشه بوسیله نیم دو جین سازنده شد . ما بعضی از آنها را بعدا بررسی خواهیم کرد . آنچه اهمیت دارداین است که گرچه انواع مختلف 8051 با سرعت ومقدار ROM متفاوت در تراشه موجودند ولی همه آنها با 8051 اصلی از نظر دستورات سازگارند . این بدان معنی است که اگرشما برنامه ای برای یکی بنویسید ، مستقل از سازنده روی دیگری هم قابل اجرا ست .
میکروکنترلر 8051
8051 عضواصلی خانواده 8051 است Intel آن را MCS-51 می نامد . جدول 1-1 امکانات اصلی 8051 را نشان می دهد .
دیگر اعضای خانواده 8051
دو عضو دیگر از میکروکنترلهای خانواده 8051 با نام 8052 و 8031 نیز وجود دارند .
میکروکنترلر 8052
8052 عضوی دیگر از خانواده 8051 است این کنترلر همه امکانات 8051 بعلاوه 128 بایت RAM ویک تایمر اضافی را دارد به بیان دیگر ، 8052 دارای 256 بایت RAM و 3تایمر است این کنترلر بجای 8K,4K حافظه ROM را در تراشه داراست .جدول 2-1 ملاحظه شود .
میکروکنترلرها و پردازنده های درونی
همانطور که از جدول 4-1 ملاحظه می شود ، 8051 زیر مجموعه ای از 8052 است بنابراین همه برنامه های نوشته شده برای 8051 قابل اجرا بر روی 8052 نیز هستند ولی عکس آن صحیح نیست .
میکروکنترلر 8053
دیگر عضو خانواده 8051 تراشه 8053 است .این تراشه اغلب بنام 8051 بی ROM خوانده می شود زیرا دارای OK بایت حافظه ROM است .برای استفاده از این تراشه باید یک ROM خارجی به آن اضافه کرد این ROM خارجی حاوی برنامه ای است که باید برداشته شده واجرا شود .این تراشه را با 8051 مقایسه کنید که در آن ROM درونی حاوی برنامه مشابهی برای برداشت و اجرا می تواند باشد ولی به 4K بایت کد محدود است .
ROM متصل به 8031 می تواند تا 64K باید باشد .درروند افزایش ROM خارجی به 8031 دو پورت را از دست می دهید .بنابراین دو پورت I/O برای کاربر باقی می ماند . برای حل این مشکل ، می توان دو I/Oخارجی به 8031 اضافه کرد . اتصال 8031 به حافظه وپورت های I/O همچون تراشه 8255 در فصل 14 بحث شده است .همچنین انواع 8031 با سرعت های مختلف بوسیله کمپانی های متفاوت در دسترسند .
فصل اول :میکروکنترلرهای 8051
انواع میکروکنترلر 8051
گرچه 8051 رایج ترین عضو خانواده 8051 است ، ولی شما قادر نخواهید بود شماره قطعه ای بصورت 8051 ملاحظه کنید . دلیل این است که 8051 با حافظه های متفاوتی چون ROM UV-EPحافظه سریع ، NV-RAM در دسترس است که هر یک شماره قطعه متفاوتی دارد . نوع ROM UV-EP خانواده 8051 تراشه 8751 است نوع ROM سریع بوسیله کمپانی های متعدد از جمله Atmel راهی بازار شده است . 8051 نوع سریع از Atmel است که AT89C51 خوانده می شود . نوع NV-RAM از 8051 بوسیلهDallas semiconductor بنام DS500 شناخته می شود .همچنین نوع OTP ( یکبار قابل برنامه ریزی ) خانواده 8051 بوسیله سازندگان متعددی تولید شده است اکنون هر یک از تراشه های فوق را بطور خلاصه توصیف و کاربرد آنها را بیان می کنیم .
میکرو کنترلر 8751
تراشه 8751 فقط بایت حافظه ROM UV- EPدرونی است .هنگام استفاده از این تراشه در طراحی و پیاده سازی به دستگاه برنامه نویسی ROM Pو پاک کننده برای پاک کردن ROM UV-EPدردرون 8751 قبل از برنامه نویسی نیاز است .باتوجه به این نکته که ROM درون این تراشه از نوع ROM UV-EPاست ،حدود 20 دقیقه برای پاک کردن آن وقت لازم است تا بتوان بعد از آن عمل برنامه نویسی را انجام داد ، این مسئله موجب شد تا بسیاری از تولید کنندگان انواع سریع و NV-RAM نوع 8751 را که در زیر بحث شده بکار ببرند .همچنین نوع سریع 8751 نیز توسط تعدادی از تولید کنندگان ساخته شده است .
AT89C51 از شرکت Atmel
این تراشه 8051 رایج دارای ROM سریع می باشد ، در طراحی های سریع این نوع حافظه ایده ال است زیرا حافظه سریع می تواند طی چند ثانیه ،درمقایسه 20 دقیقه لازم برای 8751 پاک شود .با این دلیل AT89C51 بجای 8751 بکار برده شده است .تا هنگام پاک کردن تراشه وقتی تلف نشود وبدینوسیله ساخت سیستم سریع گردد هنگام استفاده از AT89C51 برای سخت سیستم های مبتنی بر میکروکنترلر به سوزاننده یا برنامه ریز ROM سریع نیاز داریم ، بااین وجود به پاک کننده ROM نیاز نیست .توجه داشته باشید که در حافظه سریع باید تمام حافظه پاک شود تا بتواند مجددا آن را برنامه نویسی کرد .پاک کردن حافظه سریع با خود سوزاننده صورت میگیرد و با این دلیل پاک کننده جداگانه ای لازم نمی باشد .برای حذف سوزاننده ROM P Atmelروی نوعی از AT89C51 کار می کند که می تواند از طریق پورت سریال COM یک IBM PC برنامه ریزی شود .
توجه : C درشماره قطعه بمعنی CMOS است .
محصولات مختلفی از نظرسرعت و بسته بندی تولید شده است . جدول 4-1 را ببینید مثلا به AT89C51-12PCتوجه کنید که در آن C قبل از 51 به معنی CMOS است بنابراین توان مصرفی کمی دارد .
12 به معنی P.12MHz برای پلاستیکی بودن بسته C,DIP بمعنی تجاری است که د رمقابل M به معنی نظامی بکار می رود-12PC AT89C51 برای پروژه های دانشجویی مناب است .
DS5000از Dollas Semiconductor
نوع رایج دیگر از 8051 تراشه DS5000از Dollas Semiconductor است . ROM در DS5000 از نوعNV - RAM است قابلیت نوشتن / خواندن NV-RAM اجازه می دهد تا برنامه در ROM در حالی که روی سیستم نصب است بار شود . این کار راحتی می توان ازطریق IBM PC انجام داد . به این نوع برنامه نویسی ، بار کردن برنامه در سیستم DS5000 می گویند . که انجام آن ا زطریق پورت سریال PC آن را برای ساخت سیستم ها درخانه ایده ال می کند . مزیت دیگر NV- RAM قابلیت تغییر یک بایت در هر بار است . این قابلیت با ROM UV- EPو حافظه سریع کار می کند ومی تواند از طریق پورت سریال COMیک IBM PC برنامه ریزی شود .