دانلود مقاله مزیت های میکروکنترلر 8 بیتی 8051

Word 148 KB 450 24
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۱۶,۰۰۰ تومان
قیمت: ۱۲,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • 8051 

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

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

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

     

     

     ویژگیهای 8051    

            ROM                  1            Serial Port                            4kbytes

    RAM                  6            Interrupt Sources             28bytes 

    Timer                          2

    I/O Pins                      32

     

       میکرو کنترلر8051  عضو اصلی خانواده 8051  است که شرکت ایتل از آن به عنوان MCS-51  یاد می کند.

       اعضای دیگر خانواده 8051، 8052، 8031، 8751 و... می باشد.

    8051  

     درون 8051

     

       در یکCPU  از ثباتها ، Register به عنوان مکانی برای ذخیره سازی موقت اطلاعات مورد استفاده قرار می گیرد. اکثر ثباتهای 8051 ، 8 بیتی هستند.

       در ثباتهای 8051 فقط داده 8 بیتی می تواند قرار داد. در دیاگرام زیر یک ثبات با 8 بیت خود به ترتیب از با ارزشترین D7 تا کم ارزشترین D0 نشان داده شده است.

     

    D7 D6 D5 D4 D3 D2 D1 D0

     

    تعدادی از ثباتها که بیشترین کاربرد را دارند عبارتند از: 

       A (انباشتگر) B ، R0، R1، R2، R3، R4، R5، R6، R7، DPTR (شانگر داده) و PC        (Program counter شمارنده برنامه) که همگی 8 بیتی اند به جزء DPTR و PC .

       ثبات PC یا شمارنده برنامه به آدرس دستورالعمل بعدی که اجرا خواهد شد اشاره       می کند. زمانی که CPU که عملی را از برنامه موجود در ROM واکشی می کند شمارنده برنامه افزایش یافته و به دستورالعمل بعدی اشاره می کند. این ثبات 16 بیتی است.

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

     

       در شکل زیر 32 پایه از مجموع 40 پایه در 8051 به چهار درگاه P0، P1، P2، P3 اختصاص دارند. (شکل صفحه                 )

       دو پایه PSEN و ALE به طور عمده توسط سیستمهای مبتنی بر 8031 به کار گرفته   می شوند.

     

     

     

    XTAL1 و XTAL2 

       با وجود اینکه 8052 تراشه ای است که دارای نوسانساز اما نیازمند یک ساعت خارجی برای راه اندازی آن است که بیشتر از یک کریستال نوسانساز از نوع کوارتز به ورودیهای XTAL1 (پایه 19) و XTAL2 (پایه 18) متصل می شود.

    EA

       اعضای خانواده 8051 همگی به همراه یک ROM بر روی تراشه برای ذخیره برنامه ها ارائه می شوند در چنین مواردی باید پایه EA (پایه اکو) به VCC متصل شود در غیر این صورت پایه به GND وصل می شود.

     

    پایه های درگاه I/O 

       چهار درگاه P0، P1، P2، P3 هر کدام با استفاده از 8 پایه درگاههای 8 بیتی ایجاد         می کنند، که تمتماً به صورت خروجی پیکربندی شده اند که اگر به صورت ورودی بخواهد مورد استفاده قرار گیرد باید به وسیله مقاومتهای متصل شده به درگاه و با برنامه، تمام بیتهای درگاه را به 1 تبدیل کرد.

    MOV  A,#0FFH

    MOV  P0.A

    در این مثال درگاه P0 به ورودی تبدیل می شود.

     

    نقش دوگانه درگاه 0

       همانطوری که در شکل مشاهده می شود درگاه 0 برای AD0 تا AD7 نیز طراحی شده است که امکان استفاده از داده و آدرس را به درگاه می دهد. هنگامی که 8051 یا 8031 به یک حافظه ‌خارجی متصل است درگاه تدارک بیننده آدرس و داده برای آن است. ALE نشان دهنده این است که آیا P0 دارای آدرس است یا داده اگر ALE صفر باشد داده و اگر ALE=1 باشد آدرس تدارک دیده می شود. 

       درگاه 2 برای A8 تا A15 نیز طراحی شده است. 8031 قابلیت دسترسی به 64K بایت حافظه را دارد، از این رو یک مسیر 16 بیتی آدرس دهی خواهد داشت. 8 بیت به وسیله درگاه 0 و 8 بیت دیگری به وسیله درگاه 0 

     

     

    دستورالعمل MOV

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

     

    MOV Deest,Source

       این دستور به CPU می گوید که عملوند آن را به عملوند مقصد کپی کند. برای مثال در دستورالعمل “MOV A,R3 “ محتویات ثبات R3 به A منتقل می شود که پس از اجرا ثبات A محتویات R3 را در بر خواهد داشت. دستور MOV هیچ تأثیری در عملوتد منبع ندارد. انتقال مقدار بزرگتر از ظرفیت ثبات خطا به دنبال خواهد داشت.

    نکته: علامت “#”  پوند نشانگر مقدار است که هر کدام از ثباتهای A و B و R0-R7      می توانند با مقدار کپی شود. که اگر علامت “#” قرار داده نشود. مفهوم آن بار شدن از یک مکان حافظه است. برای مثال دستور “MOV A و 17H”  به معنی انتقال محتویات مکان حافظه 17H به ثبات A است، که دمی تواند هر مقداری را در خود داشته باشد.

     

    دستورالعمل ADD 

    ”ADD  A,Source”

       افزودن عملوند   انباشتگر (A) است.

    در دستور محاسباتی  ثبات A حتماُ باید مقصد تمام عملیات محاسباتی باشد.

     

    ORG

         نشان دهنده این است که برنامه ای که می خواهد شروع شود از چه خانه ای آغاز شود.

     

     

     

     

    DB

     

       DB (DeFile Byte) برای تعریف داده های 8 بیتی استفاده می شود که در برنامه به اسم مشخص است.

                    ORG  1000H

    MY DATA : DB        1,5,7 

                          MOV     A, My Data

                          MOV     A, My Data

    در DB اعداد می توانند به فرمهای هگزا، اسمال باینری یا اسکی به کار رود.

     

     

    EQU (Eguate)

       این دستور دهنده برای تعریف یک مقدار ثابت استفاده می شود به نحوی که مکانی از حافظه اشغال نمی شود و وابسته به یک مقدار با چسب است.

    Count    EQV    25

    MSV     R3,#Count

       پس از اجرا ثبات R3 مقدار25 را خواهد داشت مزیت EQV این است که اگر مقدار ثابتی در جاهای مختلفی تکرار شده باشد و برنامه نویس بخواهد تمام آنها را تغییر دهد با استفاده از EQV این کار انجام می گیرد.

     

    END 

       پایان برنامه را نشان می دهد.

    برنامه های تأخیر

       برای اجرای یک دستورالعمل توسط CPU تعداد مشخص چرخه ساعت (Clock Cycles) مورد نیاز است که در خانواده 8051 با عنوان چرخه های ماشین نام برده می شود.                                       در 8051 طول چرخه ماشین بستگی به فرکانس تولید شده توسط کریستال نوسانسازی دارد که بر روی مدار تراشه قرار دارد. و منبع ساعت برای 8051 می باشد.

       اغلب کریستال نوسانساز 11.0592 MHZ است که یک چرخه ماشین 1/12 فرکانس کریستال را دریافت و سپس آنرا معکوس می کنند.

    مثال: اگر فرکانس کریستال 11.0592 MHZ باشد چرخه ماشین 1.085 MS می باشد زیرا 1/921.6 KHZ                      11.0592/12=921.6 KHZ                                         

       هر دستور برای تعیین میزان تأخیر تعداد چرخه های ماشین آن دستور را در 1.085 ضرب می کنند. 

    مثلاً دستور “MOV   R5,#3” و یک چرخه ماشین دارد که زمان اجرای آن \X\ .085 MS  می باشد.

    یا “MVL AB” 1.085 MS=4.34 MS ×4 

    برنامه ریزی تایمر

       8051 دو تایمر/ شمارنده دارد، تایمر برای تولید تأخیر زمانی و شمارنده برای شمارش حوادث اتفاق افتاده کاربرد دارد. تایمرها به وسیله فلیپ فلاپ ساخته می شوند 8051 دو تایمر دارد تایمر 0 و تایمر 1 که هر دو 16 بیتی اند.

       ثبات تایمر ها به وسیله دو بایت کم ارزش و پردازش قابل دسترسی است. کم ارزش را برای تایمر 0، TL0 و برای تایمر 1، TL1 و پردازش را برای تایمر 0، TH0 و برای تایمر 1،TH1 می نامند.

    D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0

      

            TH                                                                       TL                      

     

     

    ثبات TM0D (حالت تایمر)

       هر دو تایمر برای تنظیم حالات کاری از ثبات TM0D استفاده می کنند. که 8 بیت دارد، که 4 بیت کم ارزش آن برای تایمر 0 است.   

    GATE 4T M1 M0 GATE CLT M1 M0

                                                         

                             تایمر0                                                       تایمر 1   

    حالت عمل                                                                     حالت                 M0        M1

    حالت تایمر 13 بیتی. 8 بیت بالای تایمر (THX)                     0            0                     0 با 5 بیت پائینی از 8 بیت پائین تایمر (TLX)

     

    حالت تایمر 16 بیتی. تایمر 16 بیتی که THX                        0           1                      1

    و TLX به هم پیوسته اند.

     

    بار شدن خودکار 8 بیتی1           0                      2                                                   

     

    حالت تایمر دو قسمتی1            1                      3                                                      

     

    حالت 1 و 0

       تایمر 16 بیتی است از 0000 تا FFFF

       بعد از مقدار دهی TH و TL تایمر با دستور “SETB TR0” یا “SETB TR1” شروع    می شود.

       بعد از اینکه تایمر شروع به شمارش کرده و افزایش می کند تا به مقدار FFFF# برسد. هنگامی که از FFFF# به 0000 بر می گردد بیت پرچم (TF) یک می شود. که با دستور       “CLR TR0” یا “CLR TR1” تایمر متوقف می شود سپس باید ثباتهای TH و TL جهت تکرار عملیات دوباره با مقادیر اصلی و TF با 0 مقدار دهی شود.

       نتیجه پرچم TF برای اینکه یک می شود یا نه را می توان با دستور “JNB TFX, Target” بررسی کرد.

    پیدا کردن مقادیر TH و TL 

    فرض XTAL=11.0592 باشد. تأخیر زمانی را بر 1.085 MS تقسیم می شود.

    65536-N می شود که N مقدار دهدهی از تقسیم بالایی است.

    حاصل را به مبنای 16 می بریم YYXX که TH=YY و TL=XX.

    مثال: اگر XTAL=11.0592 MHZ باشد برای تأخیر زمانی 5 MS مقادیر عبارتند از:

    5/1.085 ms/MS =4608 پس 65536-4608=EE00H پس TH=EE ، TL=00 

       حالت0 دقیقاً مشابه حالت1 است با این تفاوت که تایمر13 بیتی است که می تواند مقادیر 0000 تا1FFFH را درTH وTL نگه دارد.

  • فهرست:

    ندارد.


    منبع:

    ندارد.

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

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

مقدمه گر چه کامپیوترها تنها چند دهه ای است که با ما همراهند، با این حال تأثیر عمیق آنها بر زندگی ما با تأثیر تلفن ، اتومبیل و تلویزیون رقابت می کند. همگی ما حضور آنها را احساس می کنیم، چه برنامه نویسان کامپیوتر و چه دریافت کنندگان صورت حساب های ماهیانه که توسط سیستم های کامپیوتری بزرگ چاپ شده و توسط پست تحویل داده می شود. تصور ما از کامپیوتر معمولا داده پردازی است که محاسبات ...

مقدمه‌اي بر ميکروکنترلر 8051 باوجود اينکه بيش از بيست سال از تولد ريز پردازنده نمي‌گذرد، تصور وسيال الکترونيکي و ... بدون آنکه کار مشکي است در سال 1971 شرکت اينتل: 8080 را به عنوان اولين ريز پردازنده موفق عرضه کرد مدت کوتاهي پس از آن، موتورولا

در اين پروژه سعي بر اين است که علاوه بر آشنايي با ميکروکنترلر AVRو محيط نرم افزاري (labview) سخت افزار،به گونه اي طراحي شود که با دريافت سيگنال آنالوگ ورودي (صوت) از ميکروفن ، از طريق واحدADC ميکرو اين سيگنال به ديجيتال تبديل شود و با توجه به برنامه

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

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

مقدمه» با وجود اينکه بيش از بست سال از تولد ريز پردازنده نمي گذرد،تصور وسايل الکترونيکي و اسباب بازيهاي امروزي بدون آن کار مشکلي است.در 1971 شريک انيتل،8080 را به عنوان اولين ريز پردازنده موفق عرضه کرد.مدت کوتاهي پس از آن،موتور ولا،RCA و سپس Mo

میکرولنترلر 8051 پایه و اساسی است برای یادگیری دیگر میکروکنترلر ها دستورات اسمبلی این میکرو نسبت به AVR خیلی کمتر هست و دارای امکانات کمتری نسبت به دیگر میکرو ها است به همین دلیل یادگیری و فهم آن خیلی راحت و آسان می باشد که برای شروع ابتدا باید مفاهیم منطق و دیجیتال را خوب فهمیده باشید و بعد از آن باید سخت افرار 8051 و RAM و ROM داخلی آن را درک کرده باشید تا بتوانید یک برنامه ...

گر چه کامپيوترها تنها چند دهه اي است که با ما همراهند، با اين حال تأثير عميق آنها بر زندگي ما با تأثير تلفن ، اتومبيل و تلويزيون رقابت مي کند. همگي ما حضور آنها را احساس مي کنيم، چه برنامه نويسان کامپيوتر و چه دريافت کنندگان صورت حساب هاي ماهيانه که

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