دانلود مقاله میکروکنترلر ها

Word 56 KB 34876 26
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۱۶,۰۰۰ تومان
قیمت: ۱۲,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • مقدمه: گرچه کامپیوترهای تنها چند دهه‎ای است که با ما همراهند با این حال تأثیر عمیق آنها بر زندگی ما به تأثیر تلفن، اتومبیل و تلویزیون رقابت می‎کند.

    همگی ما حضور آنها را احساس می‎‏کنیم چه برنامه‎نویسان کامپیوتر و چه دریافت کنندگان صورت حسابهای ماهیانه که توسط سیستمهای کامپیوتری بزرگ چاپ شده و توسط پست تحویل داده می‎شود.

    تصور ما از کامپیوتر معمولاً «داده‎پردازی» است که محاسبات عددی را بطور خستگی ناپذیری انجام می‎دهد.

    ما با انواع گوناگونی از کامپیوترها برخورد می‎کنیم که وظایفشان را زیرکانه و بطرزی آرام، کارا و حتی فروتنانه انجام می‎دهند و حتی حضور انها اغلب احساس نمی‎شود.

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

    د این مجموعه‎ها کامپیوترها وظیفه کنترل را در ارتباط با دنیای واقعی برای روشن و خاموش کردن وسایل و نظارت بر وضعیت آنها انجام می‎دهند.

    میکروکنترلر ها (بر خلاف میکرو کامپیوترها و ریزپردازنده‎ها) اغلب در چنین کاربردهایی یافت می‎شوند.

    با وجود اینکه بیش از بیست سال از تولد ریزپردازنده نمی‎گذرد تصور وسایل الکترونیکی و اسباب بازیهای امروزی بدون آن کار مشکل است.

    در سال 1971 شرکت اینتل 8080 رابه عنوان اولین ریزپردازنده موفق عرضه کرد.

    مدت کوتاهی پس از آن موتورلا، RCA و سپس Mos Technology و Zilog انواع مشابهی را به ترتیب به نامهای 6800، 1801، 6502، 80Z عرضه کردند گرچه این مودارهای مجتمع به خودی خود فایده چندانی نداشتند اما به عنوان بخشی از یک کامپیوتر تک بورد (SBC) به جزء مرکزی فرآورده‎های مفیدی برای آموزش طراحی با ریزپردازنده‎ها تبدیل شدند.

    از این SBCها که به سرعت به آزمایشگاههای طراحی در کالج‎ها، دانشگاهها و شرکتی‎های الکترونیک راه پیدا کردند می‎توان برای نمونه از D2 موتورولا KIM-1 ساخت Mos Technology و 85-SDK متعلق به شرکت اینتل نام برد.

    میکروکنترلرها قطعه‎ای شبیه به ریزپردازنده است در سال 1976 اینتل 8748 را به عنوان اولین قطعه خانواده میکروکنترلرهای TM 48-MCS معرفی کرد.

    8748 با 17000ترانزیستور در یک مدار مجتمع شامل یک CPU، 1کیلو بایتی EPROM، 64بایت RAM، 27 پایه I/O و یک تایمر 8بیتی بود.

    این IC و دیگر اعضای TM 48-MCS که پس از آن آمدند خیلی زود به استاندارد صنعتی در کاربردهای کنترل گرا تبدیل شدند.

    جایگزین کردن اجزاء الکترو مکانیکی در فرآورده‎هایی مثل ماشینهای لباسشویی و چراغهای راهنمایی از ابتدای کار یک کاربرد مورد توجه برای این میکرو کنترلرها بودند و همین طور باقی ماندند.

    دیگر فرآورده‎هایی که در آنها می‎توان میکروکنترلر را یافت عبارتند از اتومبیل‎ها تجهیزات صنعتی، وسیال سرگرمی و ابزارهای جانبی کامپیوتر.

    توان ابعاد و پیچیدگی میکروکنترلرها با اعلام ساخت 8051، یعنی اولین عنصر خانواده میکرو کنترلرای TM51-MCS در سال 1980 توسط اینتل پیشرفت چشمگیری کرد.

    در مقایسه با 8048 این قطعه شامل بیش از 60000ترانزیستور، 4k بایت Rom، 128 بایت RAM، 32 خط I/O یک درگاه سریال و دو تایمر 16 بیتی است.

    که از لحاظ مدارات داخلی برای یک IC بسیار قابل ملاحظه است.

    امروزه انواع گوناگونی از این IC وجود دارد که بصورت مجازی این مشخصات را دو برابر کرده‎اند.

    شرکت زیمنس که دومین تولید کننده قطعات است (TM 51-MCS)، 80515SAB وقفه و یکی مبدل آنالوگ به دیجیتال با 8 کانال ورودی عرضه کرده است.

    خانواده 8051 به عنوان یکی از جامع ترین و قدرتمندترین میکروکنترلرهای 8 بیتی شناخته شده و جایگاهش را به عنوان یک میکروکنترلر مهم برای سالهای آینده یافته است.

    این بخش با بحثی در مورد نقش و اهمیت میکروکنترلرها در زندگی روزمره و نیاز به میکروکنترلرها و مقایسه آنها با میکرو پروسسورهای همه منظوره‎ای چون پنتیوم و دیگر میکرو پروسسورها آغاز شده است.

    میکروکنترلرها در برابر میکرو پروسسورهای همه منظوره تفاوت بین یک میکرو پروسسور و یک میکروکنترلر چیست؟

    منظور از یک میکروپروسسور ریز پردازنده میکروی پروسسورهایی از خانواده x86 اینتل مثل 8036,80286,8086 و یا 68040,68030,68020خانواده‎هائی از این قبیل است این میکروپروسسورها فاقد RAM و پورت‎های ROM در درون خود تراشه هستند.

    به این دلیل به آنها «میکروپروسسورهای همه منظوره» می‎گویند.

    طراح سیستمی که از میکرو پروسسور همه منظوره‎ای چون پنتیوم، 68040 استفاده می‎کند، باید در خارج از آن 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 است.

    جدول زیر بعضی از محصولات تک منظوره را نشان می‎دهد.

    منزل خودکار لوازم خانگی کامپیوتر ارتباطات درونی کنترل موتور تلفن کیسه هوا دزدگیر وسایل اندازه‎گیری منشی تلفن سیستم حفاظتی ماشین‎های خیاطی کنترل انتقال ورود بدون کلید اداری فاکس مایکروویو دستگاه فتوکپی چاپگر لیزری چاپگر رنگی احضار از بلندگو انتخاب یک میکروکنترلر چهار نوع میکروکنترلر 8بیت مهم وجود دارد که عبارتند زا: 6811 ازموتورولا 8051- ازاینتل Z8- از زایکوگ PIC 16x از شرکت میکروچیپ تکنولوژی هر یک از میکرو کنترلرهای فوق مجموعه دستورات و مجموعه ثباتهای خاص خود را دارد، بنابراین با یکدیگر سازگار نیستند.

    برنامه‎ای که بر روی یک ازآنها نوشته شود، بر روی دیگری قابل اجرا نیست.

    میکروکنترلرهای 16 و 32 بیتی هم وجود دارند که به وسیله سازندگان مختلف ساخته شده‎اند.

    با این تنوع در میکرو کنترلرها، طراح باید کدامیک را انتخاب کند؟

    سه روش برای این انتخاب در زیر تشریح شده است: (1) برآورده کردن نیازهای محاسبات کار بطور موثر و مقرون به صرفه.

    (2) در دسترس داشتن نرم‎افزارهای کمکی مانند کامپایلرها، اسمبلرها و عیب یاب‎ها (3) منابع گسترده و قابل اعتماد برای میکروکنترلرها اکنون هر یک از موارد فوق را به تفصیل بررسی می‎کنیم: روش انتخاب میکروکنترلر: 1-اولین و قدیمی‎ترین روش انتخاب میکروکنترلر این است که نیازهای سیستم دقیقاً مشخص و هزینه آن هم مقرون به صرفه باشد.

    دیگر موارد قابل بررسی عبارتند از: الف) سرعت.

    بالاترین سرعتی که میکروکنترلر پشتیبانی می‎کند چیست؟

    ب) بسته‎بندی.

    آیا بسته‎بندی از نوع DIP چهل پایه است، از نوع AFP (بسته همسطح) تهیه شده است، و یا در دیگر انواع بسته‎بندی ارائه شده است؟

    بسته‎بندی به دلیل فضای اشغالی مونتاژ و ساخت نمونه نهایی اهمیت خاصی دارد.

    پ) توان مصرفی.

    این فاکتور خصوصاً برای محصولاتی که با باطری کار می‎کنند، اهمیت دارد.

    ت) مقدار RAM و ROM در تراشه ث) تعداد پایه‎های I/O و تایمر در تراشه ج) به چه سادگی به ویرایش بعدی از نظر کارایی و توان مصرفی تبدیل می‎شود.

    چ) قیمت هر عدد.

    این فاکتور از نظر قیمت تمام شده میکروکنترلری که در تولید بکار رفته، اهمیت دارد.

    مثلاً وقتی که 100000 واحد خریداری گردد، قیمت هر یک می‎تواند حدود 50 سنت باشد.

    (2) روش دوم در انتخاب یک میکروکنترلر این است که به چه سادگی می‎توان حول آن امکانات ایجاد کرد.

    بررسی‎های کلیدی نشان می‎دهد که در دسترس بودن اسمبلر، عیب یاب، کامپایلر C امولاتور (شبیه ساز) پشتیبانی فنی و متخصصین درون خانه‎ای و بیرونی از نکات قابل توجهند در بسیاری از حالات، تولید کنندگان دست دوم، (تولید کنندگانی که سازنده اولیه نیستند) می‎توانند اگر بهتر از سازنده نباشند، در حد آنها سرویس ارائه کنند.

    (3) سومین روش در انتخاب میکروکنترلر، در دسترس بودن آن بتعداد لازم در حال حاضر و آینده است.

    برای بعضی از طراحان، این یکی حتی مهمتر از موارد 1 و 2 است.

    در حال حاضر، در میان پیشروان میکروکنترلرها،‌خانواده 8051 بیشترین تعداد تولید کننده ثانویه را دارد.

    در اینجام منظور از تولیدکننده ثانویه میکروکنترلر، تولید کننده‎ای به جز تولید کننده اصلی است.

    در مورد 8051، که ابتدا به وسیله Intel ساخته شد، چندین کمپانی دیگر در حال حاضر مشغول تولید آن بوده و یا هستند.

    از آن جمله: Matra, Simens, AMD, Atmel, Philips/Signetics باید متذکر شد که Motorola و Microchip Technology, Zilog تعداد زیادی شعبات را برای این منظور انتخاب کرده‎اند تا تولیدات خود را به طور گسترده و به موقع در دسترس قرار دهند زیرا تولیدشان با ثبات، در حد کمال و قابلیت دسترسی، از یک مرکز است.

    در سال‎ای اخیر آنها نیز شروع به فروش سلول کتابخانه AISC از میکروکنترلرها کرده‎اند.

    جدول 1-2 بعضی از کمپانیهای تولید کننده اعضای خانواده 8051 Web Site Company www.intel.com/design/mcs51 Intel www.atmel.com Atmel WWW.Semiconductors.philips.com Philips/signetics www.Sci.siemens.com Siemens www.dalsemi.com Dallas Semiconductors تاریخچه مختصری از 8051: در سال 1981 شرکت اینتل، میکروکنترلری به نام 8051 را معرفی کرد.

    این میکروکنترلر دارای 128 بایت RAM، 4K بایت ROM، دو تایمر، یک پورت سریال و چهار پورت موازی (هریک 8 بیت) بود که همه آنها در یک تراش تعبیه شده بودند.

    زمانی به آن «سیستم در یک تراشه» می‎گفتند.

    8051 یک پروسسور 8 بیت است، یعنی CPU هر بار می‎تواند فقط روی 8 بیت داده کار کند.

    داده‎های بزرگتر از 8 بیت باید به قطعات 8 بیت بشکنند وسپس بوسیله CPU پردازش شوند.

    8051 کلاً دارای چهار پورت I/O با عرض 8 بیت است.

    شکل (1) را ملاحظه کنید.

    گرچه 8051 می‎تواند حداکثر 64K حافظه Rom در تراشه داشته باشد، بسیاری از سازندگان فقط 4K بایت را در تراشه کار گذاشته‎اند.

    پس از اینکه اینتل به شرط حفظ سازگاری با 8051، اجازه تولید را به دیگر سازندگان داد، تراشه مذکور بسیار مورد توجه قرار گرفت.

    این توافق منجر به تولید انواع 8051 با سرعت‎های متفاوت و مقداری ROM در تراشه به وسیله نیم دوجین سازنده شد.

    آنچه اهمیت دارد این است که گرچه انواع مختلف 8051 با سرعت و مقدار Rom متفاوت در تراشه موجودند ولی همه آنها با 8051 اصلی از نظر دستورات سازگارند.

    این بدان معنی است اگر شما برنامه‎ای برای یکی بنویسید مستقل از سازنده روی دیگری هم قابل اجراست.

    میکروکنترلر 8051 8051 عضو اصلی خانواده 8051 است.

    intel آن را MCS-51 می‎نامد.

    جدول 1-3 امکانات اصلی 8051 را نشان می‎دهد.

    توجه: مقدار Rom در تراشه حجم برنامه را نشان می‎دهد.

    انواع میکروکنترلر8051: گرچه 8051 رایج‎ترین عضو خانواده 8051 است، ولی شما قادر نخواهید بود شماره قطعه‎ای بصورت «8051» ملاحظه کنید.

    دلیل این است که 8051 با حافظه‎های متفاوتی چون uv-EPROM، حافظه سریع، NV-RAM در دسترس است که هر یک شماره قطعه متفاوتی دارد.

    نوع UV_EPROM خانواده 8051، تراشه 8751 است نوع Rom سریع بوسیله کمپانی‎های متعدد از جمله Atmel راهی بازار شده است.

    8051 نوع سریع از Atmel است که AT89C51 خوانده می‎شود.

    نوع NV-RAM از 8051 بوسیله Dall as Semiconductor بنام DS500 شناخته می‎شود.

    همچنین نوع OTP (یکبار قابل برنامه‎ریزی) خانواده OTP بوسیله سازندگان متعددی تولید شده است.

    اکنون هر یک از تراشه‎های فوق را بطور خلاصه توصیف و کاربرد آنها را بیان می‎کنیم.

    میکروکنترلر 8751: تراشه 8751 فقط 4K بایت حافظه UV-EPROM درونی دارد.

    هنگام استفاده از این تراشه در طراحی و پیاده سازی به دستگاه برنامه‎نویسی PROM و پاک کننده برای پاک کردن NV_EPROM در درون 8751 قبل از برنامه‎نویسی نیاز است.

    با توجه به این نکته که Rom درون این تراشه از نوع NV-EPROM است، حدود 20 دقیقه برای پاک کردن آن وقت لازم است تا بتوان بعد از عمل برنامه نویسی را انجام داد.

    این مسأله موجب شد تا بسیاری از تولیدکنندگان انواع سریع و NV-RAM نوع 8051 را که در زیر بحث شده، بکار ببرند.

    همچنین انواع سریع 8751 نیز توسط تعدادی از تولیدکنندگان ساخته شده است.

    AT89C51 از شرکت Atmel: این تراشه 8051 رایج دارای Rom سریع می‎باشد، در طراحی‎های سریع این نوع حافظه ایده‎آل است زیرا حافظه سریع می‎تواند طی چند ثانیه، در مقایسه 20 دقیقه لازم برای 8751، پاک شود.

    به این دلیل AT89C51 بجای 8751 بکار برده شده است تا هنگام پارک کردن تراشه وقتی تلف نشود و بدینوسیله ساخت سیستم سریع گردد.

    هنگام استفاده از AT89C51 برای ساخت سیستم‎های مبتنی بر میکروکنترلر به سوزاننده یا برنامه‎ریز Rom سریع نیاز داریم، با این وجود به پاک کننده Rom نیازی نیست.

    توجه داشته باشید که در حافظه سریع باید تمام حافظه پاک شود تا بتوان مجدداً آن را برنامه‎نویسی کرد.

    پاک کردن حافظه سریع با خود سوزاننده صورت می‎گیرد و به این دلیل پاک کننده جداگانه‎ای لازم نمی‎باشد برای حذف سوزاننده Atmel,PRom روی نوعی از AT89C51 کار می‎کند که می‎تواند از طریق پورت سریال COM یک IBM PC برنامه‎ریزی شود.

    انواع 8051 از Atmel: توجه: «C» در شماره قطعه به معنی Cmos است.

    محصولات مختلفی از نظر سرعت و بسته‎بندی تولید شده است.

    جدول زیر را ببینید.

    مثلاً به AT89C51-12PC توجه کنید که در آن «C» به معنی Cmos است.

    بنابراین توان مصرفی کمی دارد.

    8051 با سرعت‎های مختلف از Atmel: «12» به معنی 12MHZ، «P» برای پلاستیکی بودن بسته DIP و «C» به معنی تجاری است که در مقابل «M» به معنی نظامی بکار می‎رود AT89C51-12PC برای پروژه‎های دانشجوئی مناسب است.

    DS 5000 از Dallas Semiconductor نوع رایج دیگر از DS5000 تراشه از Dallas Semiconductor است.

    Rom در DS5000 از نوع NV-RAM است.

    قابلیت نوشتن/خواندن NV-RAM اجازه می‎دهد تا برنامه در Rom، در حالی که روی سیستم نصب است، باز شود.

    این کار راحتی می‎توان از طریق IBMPC انجام داد.

    به این نوع برنامه‎نویسی، بارکردن برنامه درسیستم DS5000 می‎گویند که انجام آن از طریق پورت سریال PC آن را برای ساخت سیستم‎ها در خانه ایده‎آل می‎کند.

    مزیت دیگر NV-RAM قابلیت تغییر یک بایت در هر بار است.

    این قابلیت با NV-EPROMو حافظه سریع کار می‎کند و می‎تواند ازطریق پورت سریال COM یک IBM PC برنامه‎ریزی شود.

    انواع 8051 از Dallas: توجه کنید که ساعت زمان واقعی با تایمر تفاوت دارد.

    ساعت زمان واقعی، زمان شبانه‎روز (ساعت، دقیقه، ثانیه) و تاریخ (سال، ماه و روز) را حتی اگز منبع تغذیه قطع شود تولید می‎کند.

    انواع مختلفی از DS5000 از نظر سرعت و بسته‎بندی وجود دارد که در جدول زیر نشان داده شده است.

    مثلاً DS5000-8-8 دارای NV-RAM 8k با سرعت 8MHZ است.

    اغلب DS5000-8-12 یا DS5000T-8-12برای پروژه‎های دانشجوئی مناسب است.

    انواع 8051 از Dallas: نوع OTP از 8051: انواع OTP از 8051 از منابع مختلف در دسترس قرار دارد.

    انواع سریع و NV-RAM معمولاً برای توسعه تولید بکار برده می‎شود.

    وقتی که محصولی طراحی شد و بغایت اصلاح گردید، نوع OTP از 8051 برای تولید انبوه بکار برده می‎شود زیرا از لحاظ قیمت بسیار ارزانتر است.

    خانواده 8051 از Philips: محصول مهم دیگری از خانواده 8051 به وسیله شرکت philips ارائه شده است این شرکت از نظر نوع، بیشترین تولید میکروکنترلر را دارد.

    بسیاری از محصولات آن شامل امکاناتی مثل تبدیل A-D، D-A و I/O توسعه یافته و یا هر دو نوع OTP و حافظه سریع است.

    دیگر اعضای خانواده 8051: دو عضو دیگر از میکروکنترلرهای خانواده 8051 با نام 8052 و 8031 نیز وجود دارند.

    میکروکنترلر8052: 8052 عضوی دیگر از خانواده 8051 است.

    این کنترلر همه امکانات 8051 بعلاوه 128 بایت RAM و یک تایمر اضافی را دارد.

    به بیان دیگر، 8052 دارای 256‌بایت RAM و 3 تایمر است.

    این کنترلر بجای 4K، 8K حافظه ROM را در تراشه داراست.

    میکروکنترلر8031: دیگر عضو خانواده 8051 تراشه 8031 است.

    این تراشه اغلب بنام 8051 بی Rom خوانده می‎شود زیرا دارای Ok بایت حافظه Rom است.

    برای استفاده از این تراشه باید یک Rom خارجی به آن اضافه کرد.

    این Rom خارجی حاوی برنامه‎ای است که باید برداشته شده و اجرا شود.

    این تراشه را با 8051 مقایسه کنید که در آن Rom درونی حاوی برنامه مشابهی برای برداشت و اجرا می‎تواند باشد ولی به 4K بایت کد محدود است.

    Rom معتدل به 8031 می‎تواند تا 64k بایت باشد.

    در روند افزایش Rom خارجی به 8031 دو پورت را از دست می‎دهید.

    بنابراین دو پورت I/O برای کاربر باقی می‎ماند.

    برای حل این مشکل، می‎توان دو I/O خارجی به I/O اضافه کرد.

    اتصال 8031 به حافظه و پورتهای 8031، همچون تراشه 0) است.

    همچنین انواع 8031 با سرعت‎های مختلف بوسیله کمپانی‎های متفاوت در دسترسند.

    بررسی اجمالی پایه‌ها در این قسمت معماری سخت‎افزار 8051 با نگاهی از بیرون به پایه‎های آن معرفی می‎شود و در ادامه شرح مختصری از عملکرد هر پایه ارائه می‎گردد.

    همان طور که در شکل صفحه بعد دیده می‎ود 32 پایه از40پایه 8051 به عنوان خروجی درگاه I/O عمل می‎کنند معهذا 24 خط از این خطوط دو منظوره هستند.

    هریکی از این خطوط می‎توانند به عنوان I/O یا خط کنترل و یا بخشی از گذرگاه آدرس یا گذرگاه داده بکار روند.

    در طراحی‎هایی که با کمترین مقدار حافظه و دیگر قطعات خارجی انجام می‎شوند از این درگاهها به عنوان I/O همه منظوره استفاده می‎کنند.

    هر هشت خط یکی درگاه می‎تواند به صورت یک واحد در ارتباط با وسایل موازی مانند چاپگرها و مبدهای دیجیتال، آنالوگ بکار رود و یا هر خط به تنهایی با وسایل تک بیتی مثل سوئیچ ها، I/Oها، ترانزیستورها،‌سیم پیچ ها، موتورها و بلندگوها ارتباط برقرار کند.

    -درگاه 0 درگاه 0 یک درگاه دو منظوره از پایه 32 تا 39 تراشه 8051 می‎باشد این درگاه در طراحی‎های باکمترین اجزاءی ممکن به عنوان یک درگاه I/O عمومی استفاده می‎شود در طراحی‎های بزرگتر که از حافظه خارجی استفاده می‎کنند این درگاه یک گذرگاه آدرش و داده مالتی پلکس شده می‎باشد.

    -درگاه 1 درگاه 1 درگاه اختصاصی I/O روز پایه‎های 1 تا 8 است.

    پایه‎های P1.0 تا P1.7 در صورت نیاز برای ارتباط با وسایل خارجی بکار می‎روند.

    وظیفه دیگری برای پایه‎های درگاه یک در نظر گرفته نشده است.

    بنابراین آنها گهگاه برای ارتباط با وسایل خارجی بکار می‎روند استثناء در ICهای 8052 و8032 که از P1.0 و P1.1 به عنوان خطوط I/O و یا ورودی تایمرسوم استفاده می‎شود.

    درگاه 2 درگاه 2 (پایه‎های 21 تا 28 یک درگاه دو منظوره است که به عنوان I/O عمومی و یا بایت‎های بالای گذرگاه آدرس در طراحی با حافظه کد خارجی به کار می‎رود این درگاه همچنین در طراحی‎هایی که بیش از 256بایت از حافظه وارده خارجی نیاز دارند نیر استفاده می‎شود.

    -درگاه 3 درگاه 3 یک درگاه دو منظوره روی پایه‎های 10 تا 17 می‎باشد.

    علاوه بر I/O عمومی این پایه‎ها هر یک وظایف دیگری نیز دررابطه با امکانات خاص 8051 دارند.

    وظایف خاص پایه‎های درگاه 3 و درگاه 2 در جدول زیر خلاصه شده است.

    Progrom store Ebable PSEN- 8051 چهار سینگال اختصاص یافته برای کنترل گذرگاه دارد.

    PSEN یک سینگال خروجی روی پایه 29است که حافظه برنامه خارجی (کد) را فعال می‎کند این پایه معمولاً به پایه OE یک EPROM وصل می‎گردد تا خواندن بایت‎های برنامه از EPROM امکان پذیر شود.

    سیگنال PSEN در طی مرحله خواندن یک دستورالعمل پایین می‎دهد.

    کدهای دو دویی برنامه (کدهای عملیاتی) از EPROM خوانده می‎شوند در گذرگاه داده منتقل می‎شوند و برای رمزگشایی در ثبات دستورالعمل 8051 ذخیره می‎شوند هنگام اجرای برنامه از Rom داخلی (8052/8051) PSEN در حالت غیرفعال (وضعیت بالا) باقی می‎ماند.

    - Address latch Enable ALE سیگنال خروجی ALE در پایه 30 برای هر فردی که با ریزپردازنده‎های اینتل مثل 8085، 8086 یا 8088 کار کرده باشد آشناست.

    8051 بطور مشابهی از ALEبرای جداسازی گذرگاه آدرس و داده استفاده می‎کند هنگامی که درگاه 0 در حالت خاص خود به عنوان گذرگاه داده و بایت پایین گذرگاه آدرس استفاده می‎شود سیگنال ALE آدرس را در یک ثبات خارجی در طی نیمه نخست سیکل حافظه نگاه می‎دارد.

    پس از آن خطوط درگاه 0 برای ورود و خروج داده در طی نیمه دوم سیکل حافظه یعنی هنگامیکه انتقال داده انجام می‎شود در دسترس هستند.

    سیگنال ALE با فرکانس یک ششم فرکانس نوسان‎ساز روی تراشه نوسان می‎کند و می‎تواند به عنوان یک پالس ساعتی همه منظوره در بقیه سیستم بکار رود.

    اگر 8051 از یک کریستال 12 مگاهرتز، پالس ساعت دریافت کند، ALE با فرکانس 2مگاهرترز نوسان می‎کند.

    تنها استثناء در طی انجام دستورالعمل MOVX است که یک پالس ALE حذف می‎شود.

    این پایه همچنین برای برنامه‎ریزی پالس ورودی در انواع EPROM را در 8051 مورد استفاده قرار می‎گیرد.

    External Access EA سینگال ورودی EA در پایه 31 معمولاً به سطح منطقه بالا (5+) یا پایین (زمین) وصل می‎شود اگر این پایه در وضعیت بالا قرارگرفته باشد 8052/8051 برنامه را از Rom داخلی یعنی 4k یا 8k بایت پایین حافظه اجرا می‎کند هنگامی که پایین باشد Rom داخلی غیر فعال می‎شود و برنامه‎ها از EPROM خارجی اجرا می‎شوند همچنین نوع EPROMدار 8051 از خط EA برای تغذیه 21 ولت (Vpp) در برنامه‎ریزی EPROM داخلی استفاده می‎کنند.

    RST (Reset) ورودی RST در پایه 9، آغازگر اصلی 8051 است هنگامی که این سیگنال حداقل برای دو سیکل ماشین در وضعیت بالا بماند.

    ثبات‎های داخلی 8051 بامقادیر مناسبی برای یک شروع به کار سازمان یافته بار می‎شوند.

    -ورودی نوسان ساز روی تراشه: 8051 دارای یک نوسان ساز روی تراشه است و معمولاً با یک کریستال که به پایه‎های 18 و 19 وصل می‎شود به راه می‎افتد خازنهای پایدار کننده نیز بصورت نشان داده شده مورد نیاز هستند.فرکانس نامی کریستال برای اغلب IC‎های خانواده TM51-MCS، 12مگاهرتز است هر چند که 1-BH31 C80 می‎تواند با فرکانسهایی تا 14 مگاهرتز نیز کار کند.

    نوسان‎ساز روی تراشه الزاماً نیازی به یک کریستال ندارد.

    همان طور که در شکل نشان داده شده است یک منبع پالس ساعتی TTL می‎تواند به XTAL1 و XTAL2 وصل شود.

    «راه اندازی 8051 با یک نوسان ساز» -اتصالات تغذیه 8051 با یکی تغذیه 5 ولتی کار می‎کند اتصال Vcc به پایه 40 و Vss (زمین) به پایه 20 وصل می‎شود.

    مجموعه دستورالعمل‎ها همانطور که جمله‎های از کلمات ساخته شده‎اند برنامه‎ها هم از دستورالعمل‎ها ساخته می‎شوند.

    اگر برنامه‎ها از مجموعه دستورالعمل‎هایی منطق و معتبر برخوردار باشند برنامه‎ای سریع، کارا و حتی زیبا و با سلیقه بدست خواهد آمد آنچه که بطور منحصر به فرد به یک خانواده از کامپیوترها متعلق است مجموعه دستورالعمل‎های آن یعنی فهرستی از عملیات مجاز مانند جمع، انتقال و پرش می‎باشد در این قسمت مجموعه دستورالعمل‎های TM51-MCS به طور فشرده معرفی می‎شود.

    -انواع دستورالعمل‎ها دستورالعمل‎های 8051 به پنچ گروه کاری تقسیم می‎شوند دستورالعمل‎های حسابی دستورالعمل‎های منطقی دستورالعمل‎های انتقال داده دستورالعمل‎های متغیر بولی دستورالعمل‎های انشعاب برنامه نمودار مرجع دستورالعملها راهنما الف) میکرو پروسسور میکروکنترلر: ب) میکروکنترلر گذرگاه آدرس منزلخودکارلوازم خانگیکامپیوترارتباطات درونیکنترل موتورتلفنکیسه هوادزدگیروسایل اندازه‎گیریمنشی تلفنسیستم حفاظتیماشین‎های خیاطیکنترل انتقالورود بدون کلیداداریفاکسمایکروویودستگاه فتوکپیچاپگر لیزریچاپگر رنگیاحضار از بلندگو Web SiteCompanywww.intel.com/design/mcs51Intelwww.atmel.comAtmelWWW.Semiconductors.philips.comPhilips/signeticswww.Sci.siemens.comSiemenswww.dalsemi.comDallas Semiconductors QuantityFeature4K bytesRom128bytesRam2Timer32I/O Pins1Serial port6Interrupt Sources 6 بسته‎بندیVccوقفهتایمرپایه‎های I/ORAMROMشماره قطعه405V62321284kAT89C51403V62321284kAT89LV51203V3115641kAT89C1051203V62151282kAT89C2051405V83321288kAT89C52405V83321288kAT89LV52 مورد استفادهبسته بندیپایه‎هاسرعتشماره‌قطعهتجاریپلاستیکDIP4012MHZAT89C51-12PCتجاریپلاستیکDIP4016MHZAT89C51-16PCتجاریپلاستیکDIP4020MHZAT89C51-20PC بسته‎بندیVccوقفه‎هاتایمرهاپایه‎های I/ORAMROMشماره قطعه405V62321288kDS5000-8405V623212832kDS5000-32405V62321288kDS5000T-8405V623212832kDS5000-8 سرعتNv-Ramشماره قطعه8MHZ8kDS5000-8-812MHZ8kDS5000-8-128MHZ32kDS5000-32-8(with RTC) 8MHZ32kDS5000T-32-812MHZ32kDS5000-32-12(with RTC) 12MHZ8kDS5000T-8-12 803180528051Feature0K8K4KRom(on-chip Program Space in bytes128256128Ram(bytes)232Timers323232I/O Pins111Serial Port686Interrupt Sources عملکرد خاصآدرس بیتینامبیتدریافتی داده برای درگاه سریالB0HAXDP3.0ارسال داده برای درگاه سریالB1HTXDP3.1وقفه خارجی0B2HINT0P3.2وقفه خارجی1B3HINT1P3.3ورودی خارجی برای تمایر/شمارندهB4HT0P3.4ورودی خارجی برای تمایر/شمارندهB5H‏T1P3.5سیگنال فعال ساز نوشتن در حافظه داده خارجیB6HNRP3.6سیگنال فعال ساز خواندن در حافظه داده خارجیB7HRDP3.7ورودی خارج تایمر/ شمارنده90HT2P3.8تسخیر/ تایمر/شمارنده90HT2EXP3.9 توصیفنمادعملیات حسابیجمع A با SourceA,SourceADDA,#dataADDجمع با رقم نقلیA,#SourceADDCA,#dataADDCتفریق از AA,SourceSuBBبا رقم فرضیA,#dataSuBBافزایشAINCSourceINCکاهشADECSourceDECافزایش OPTRDPTRINCضرب AوBABMULتقسیم Aبر BABDIVتطبیق دهی انبارهADA توصیفنمادعملیات منطقیANDمنطقیA,sourceANLA,#DataANLDirect,AANLDirect, dataANLORمنطقیA,sourceORLA,DataORLDirect,AORLDirect, dataORLXORمنطقیA,SoutceXRLA, dataXRLDirect,AXRLDirect, dataXRLپاک کردنAACLRمتمم کردنAACPLچرخش A به چپARLچرخش A به چپ از طریقARLCچرخش A به راستARRچرخشA به راست از طریقCARRCتعویض دو چهار بیتASWAPتوصیفنمادعملیات انتقال دادهانتقال به soureمقصدA,SourceMOVA, dataMOVDest,AMOVDest,SourceMOVDest, dataMOVDPTR, data16MOVانتقال از حافظه کدA,@A+PCMOVCA,@A+PCMOVCانتقال از حافظه دادهA,@RiMOVXA,@ DPTRMOVX@Ri,AMOVX@DPTR,AMOVXدر شیتهDirectPUSHدر شیتهDirectPOPتعویض بایت‎هاA,SourceXCHتعویض ترتیب رقمهای پایینA,@RiXCHD توصیفنمادعملیات متغیر بولیپاک کردن بیتCCRLBitCLRSetکردن بیتCSETBBitSETBمتمم کردن بیتCCPLBitCPLANDبیت با CC,bitANLAnd NoTبیت با CC,/bitANLORبیت با CC,bitORLانتقال بیت به بیتC,bitMOVC,/bitMOVپرش در صورت /بودنCRelJCپرش در صورت /نبودنCRelJNCپرش در صورت /بودن بیتBit,relJBپرش در صورت /نبودن بیتBit,relJNBو سپس پاک کردن آنBit, relJBC توصیفنمادانشعاب برنامهفراخوانی زیر روالAddr11ACALLAddr16LCALLبازگشت از زیر روالRETبازگشت از وقفهRET1پرشAddr11AJMPAddr16LJMP@A+DPTRJMPپرش اگر A=0استRelJZپرش اگر A=0نیستRelJNZمقایسه و پرش در صورت مساوی نبودنA,direct, relCJNEA, data, relCJNERn, data,relCJNE@Ri, data, relCJNEکاهش وRn,relDJNZبرش، اگر صفر نباشدDirect,relDjnZانجام ندادن عملیاتNop آدرس دهی ثبات با استفاده از Ro-R7RNآدرس داخلی 8 بیتی (00H-FFH)Directآدرس دهی غیر مستقیم با استفاده از R0 یا R1@Riیکی از نمادهای [@ri,direct, Rn]Sourceیکی از نمادهای [@ri,direct,Rn]Destثبات 8بیتی در دستورالعملdataثابتی 16 بیتیdata16آدرس 8بیتی مستقیمBitافست 8بیتی علامتی دارRelآدرس 11 بیت در صفحه حاوی 2kAddr16آدرس 16 بیتی مستقیمAddr 16

  • فهرست:

    ندارد
     

    منبع:

    ندارد

میکروکنترلر چیست: میکروکنترلر رو درواقع می توان یه کامپیوتر کوچولو در قالب یه چیپ برای کنترل وسایل الکترونیکی (در اینجا ربات) تلقی کرد. تفاوت میکروکنترلر با میکروپروسسور در اینه که میکروکنترلر دارای یک CPU ٫مقدار محدودی RAM ٬ ROM ٬ پورت های I/O و تایمر در درون خود می باشد در صورتی که میکروپروسسور فقط یه CPU هست و شما باید RAM, ROM ,... رو به صورت اجزای جانبی به اون متصل کنید ...

مقدمه فصل يک در موردانواع ميکروکنترلر هاي MEGAAVR است که سعي شده است به طور کلي توضيح داده شود . در فصل دوم شاهد توضيحاتي در مورد عملکرد پروژه ساخت (مدار الکترونيکي ، قطعات تشکيل دهنده ، برنامه مورد استفاده وتوضيحات کامل کننده است . درف

یکی از سؤالاتی که ذهن هر علاقمند به الکترونیک را به خود مشغول میکند، این است که چه تفاوتی بین میکروپروسسور و میکروکنترلر وجود دارد و یا اصلا" چرا با وجود میکروکنترلرهای قوی، هنوز در سیستمهای جدید از میکروپروسسور استفاده می شود؟! اگر به دنبال جواب این سؤال هستید، این قسمت را با دقت مطالعه کنید : اجازه دهید در ابتدا تعریفی کلی از یک میکروپروسسور و یک سیستم میکروپروسسوری داشته ...

در اين تحقيق به ميکروپروسسورهاي PXA250 & PXA210 پرداخته مي شود. اين ميکروپروسسورها ميزان سرعت پردازش در برنامه هاي پردازشي قابل حمل، مانند pc pocket ها را افزايش مي دهند. هرکدام از اين پروسسورها در اصل يک سيستم مجتمع با قابليت پردازش بالاست که روي ي

چکیده : سخت افزار این پروژه به طور کلی از یک میکروکنترلر Atmega16 از شرکت ATMEL و یک LCD 4*20 جهت نمایش عملکرد و 4 رله در خروجی و چند قطعه دیگر جهت کارهای جانبی و تنظیمات سخت افزاری تشکیل شده است . این پروژه جهت کنترل 4 موتور مجزا با تنظیمات مجزا می باشد که توسط برنامۀ Bascom و به زبان Basic طراحی شده است . جهت شناسایی این که کدام موتور باید روشن شود به صورت مقایسه ای برنامۀ ...

ريزپردازنده وسيله اي است که مي توان با دادن فرمان آن را به عمليات مختلف واداشت . يعني يک کنترل کننده قابل برنامه ريزي است . همه ريزپردازنده ها سه عمل اساسي يکساني را انجام مي دهند : انتقال اطلاعات ، حساب و منطق ، تصميم گيري ، اينها سه کار يکسان هستن

8051 در سال 1981 شرکت اینتل میکروکنترلر 8 بیتی خود را با نام 8051 معرفی کرد که دارای 128 بایت RAM، 4 کیلو بایت ROM، دو تایمر، یک درگاه سریال و 4 درگاه که تماماً بر روی یک تراشه بود. 8051 یک ریزپردازنده 8 بیتی است به این معنی که CPU آن در هر بار می تواند فقط بر روی 8 بیت داده کار کند و داده های بزرگتر باید به قسمتهای 8 بیتی شکسته شود. پس از اینکه اینتل اجازه ساخت و فروش 8051 را ...

آموزش ساخت ربات (ميکروکنترلر) ميکروکنترلر چيست: ميکروکنترلر رو درواقع مي توان يه کامپيوتر کوچولو در قالب يه چيپ براي کنترل وسايل الکترونيکي (در اينجا ربات) تلقي کرد. تفاوت ميکروکنترلر با ميکروپروسسور در اينه که ميکروکنترلر داراي يک CPU ?مقدار محدود

پیش گفتار : پروژه دستگاه بار کد خوان محصول تحقیق چندین ماهه بوده که ؟ مسیر از منابع و مأخذهای مختلف در زمینه بارکد خوانی و ارسال آن به پورت سریال PC بهره جستم . لازم به ذکر این نکته است که مطلوب نظر اینجانب استفاده از باکس رفلکس بارکد خوان بود و ؟ به دلیل یافت نشدن این ؟ بنده را بر آن داشت که به جای استفاده از روش انعکاس از روش عبوری استفاده کنیم. که این روش مستلزم آن بود که ...

پیش گفتار : پروژه دستگاه بار کد خوان محصول تحقیق چندین ماهه بوده که ؟ مسیر از منابع و مأخذهای مختلف در زمینه بارکد خوانی و ارسال آن به پورت سریال PC بهره جستم . لازم به ذکر این نکته است که مطلوب نظر اینجانب استفاده از باکس رفلکس بارکد خوان بود و ؟ به دلیل یافت نشدن این ؟ بنده را بر آن داشت که به جای استفاده از روش انعکاس از روش عبوری استفاده کنیم. که این روش مستلزم آن بود که ...

ثبت سفارش
تعداد
عنوان محصول