طراحی کنترلر، مدارت دلخواه، پروژه ها و تمرینات درس میکروکنترلرها
بر اساس رنج حداقل و حداکثر تعریف شده توسط کاربر و با توجه به دمای محیط، سرعت موتور بین 10 تا 99 به صورت خودکار تنظیم می شود.با استفاده از میکروکنترلر ATMEGA8 و کیبورد 3×4 می توان حروف و اعداد را تایپ کرد و درون یک متغییر ذخیره نمود و محتوای این متغییر بر روی نمایشگر LCD نمایش داده می شود. در صورتی که فضای LCD پر شود کاراکترها به سمت چپ شیفت داده می شوند. تمامی حروف و اعداد کوچک و بزرگ انگلیسی قابل تایپ می باشند.این پروژه یک ماشین حساب ساده با چهار عمل اصلی بروی نمایشگر گرافیگی می باشد.این پروژه یک ماشین حساب مهندسی می باشد که تمامی کلید ها و توابع به صورت گرافیگی بر روی LCD نمایش داده می شود و با فشردن هر کلید روی کیپد کلید متناظر آن بر روی السیدی نیز تغییر حالت می دهد. نمای کلی و توابع قابل انجام توسط این ماشین حساب در تصاویر نمایش داده شده است. همچنین قابلیت رسم نمودار را دارد.یک کنترل کننده موتور با جریان خروجی 2 آمپر شامل کنترل جهت چرخش و سرعت می باشد. این مدار دارای نمایشگر LCD متنی بوده که سرعت و جهت چرخش موتور را نمایش می دهد.
پروژه کنترل دور موتور با PWM برحسب دما با avr

MCP-18

پروژه کنترل دور موتور با PWM برحسب دما با avr
پروژه تایپ حروف و اعداد با کیبورد 3.4 به زبان سی با avr

MCP-3

پروژه تایپ حروف و اعداد با کیبورد 3.4 به زبان سی با avr
پروژه ماشین حساب ساده با السیدی گرافیکی و avr

MCP-34

پروژه ماشین حساب ساده با السیدی گرافیکی و avr
پروژه ماشین حساب مهندسی با السیدی گرافیکی و avr

MCP-11

پروژه ماشین حساب مهندسی با السیدی گرافیکی و avr
کنترل سرعت و جهت موتور DC

MCP-9

کنترل سرعت و جهت موتور DC

ساختمان داخلی ریزپردازنده 8086/8088

ساختمان داخلی ریزپردازنده 8086/8088

ریزپردازنده 8086 یک ریزپردازنده 16 بیتی است. یعنی در هر زمان حداکثر می تواند 16 بیت داده را پردازش نماید. مفهوم دقیق پردازش در این بحث یعنی عملیات محاسباتی یا منطقی؛ که عملیات جابجایی را هم در این زمره قرار دادیم. این ریزپردازنده تقریبا از 29000 ترانزیستور تشکیل شده است.

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

از بخش سفارش طراحی هم اکنون درخواست خود را ثبت کنید
حل و تشریح کلیه تمرینات درس میکروکنترلر AVR
طراحی و ساخت مدارات دلخواه شما با میکروکنترلر AVR



ساختمان داخلی ریزپردازنده 8086-8088

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

اینک به بررسی تک تک بلوک های فوق الذکر می پردازیم:

واحد محاسباتی/منطقی (ALU) که دانشجویان قبلا با این قسمت آشنا شده اند، و تمام اعمال محاسباتی و منطقی در این واحد انجام می گیرد. در واقع تمام عملیات اصلی ریزپردازنده در نهایت به ریزعملیاتی تقسیم می شود که آن ریزعملیات در واحد ALU به سرانجام می رسد. مثل عمل جمع که با مدار جمع کننده ایی که در داخل ALU وجود دارد صورت می پذیرد.

ثبات های عمومی ، ثبات های داخلی ریزپردازنده هستند که عملیات محاسباتی و منطقی (پردازش) بر روی داده های موجود در آنها انجام می گیرد و داده ها به منظور این گونه عملیات در داخل ریزپردازنده در این ثبات ها ذخیره می شوند. ثبات های اشاره گر هم همانطوریکه از نامشان بر می آید برای آدرس دهی کاربرد دارند که به همراه ثبات های قطعه بدین منظور استفاده می شود. در بخش بعدی ثباتهای ریزپردازنده و پرچم های آن به صور کامل بحث خواهد شد.

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

برای بررسی بهتر عملکرد ریزپردازنده، ساختمان داخلی آن را به دو واحد مهم تقسیم می کنیم: واحد اجرا (یا اجرایی) و واحد واسطه گذرگاه که به اختصار آنها را به ترتیب EU و BIU می نامیم. مطلب مهم و جالب در این ریزپردازنده آن است که این دو واحد به صورت مجزا عمل می کنند (شما برای راحتی تصور کنید که به صورت آسنکرون نسبت به هم عمل می کنند)

واحد اجرا (EU)
همانطوریکه از نامش بر می آید، کار اصلی آن اجرای دستورالعمل هاست و شامل واحد محاسباتی و منطقی و ثبات های عمومی و ثبات پرچم هاست. واحد اجرا یک کار کاملا مشخص و تعریف شده ای دارد: اجرای دستورالعمل ها. یعنی دستورالعمل ها را از واحد BIU می گیرد و اجرا می کند.

واحد واسطه گذرگاه (BIU)
این واحد شامل ثبات های قطعه،ثبات های اشاره گر ، مدار تولید آدرس فیزیکی و صف دستورالعمل هاست. همانطوریکه از نامش بر می آید این واحد نقش واسطه بین گذرگاه داخلی ریزپردازنده و واحد EU از یک طرف و گذرگاه های خارجی آن را از طرف دیگر دارد. بنابراین تولید آدرس های لازم برای آدرس دهی در خارج از ریزپردازنده بر عهده این واحد است.

صف دستورالعمل ها
در این ریزپردازنده از یک بافر برای دستورالعمل ها به نام صف دستورالعمل ها استفاده شده است. طول این صف در ریزپردازنده 8086 شش بایت و در 8088 چهار بایت می باشد. این صف به منظور افزایش کارآیی و سرعت عملکرد CPU، در نظر گرفته شده است و به صورت FIFO عمل می کند یعنی کدهایی که اول وارد این صف شده اند، اول هم از صف خارج می شوند.

عملکرد این صف بدین صورت است که دستورالعمل ها از خارج ریزپردازنده (حافظه) وارد این صف می شود (عمل واکشی یا fetch) و واحد اجرا هم دستورالعمل ها را از این صف برداشته و اجرا می کند. پس ریزپردازنده دو کار متفاوت و همزمان انجام می دهد: یکی واکشی کردن دستورالعمل ها از حافظه که توسط BIU انجام می شود و دیگری (که می تواند همزمان با این کار انجام گیرد) اجرای دستورالعملی که واحد EU از صف دستورالعملها واکشی کرده و در حال اجراست.

بنابراین در شرایط عادی کار (توضیحات بیشتر در سایر مقالات میکرو رایانه) BIU مستقل از EU، دستورالعمل ها را از حافظه واکشی کرده و در صف دستورالعمل ها قرار خواهد داد و EU هم مستقل از کار BIU دستورالعمل ها را از جلو صف برداشته و اجرا خواهد کرد. یعنی دو کار متفاوت و همزمان که صرفا با همان ایده قرار دادن بافر کوچک (صف) در داخل ریزپردازنده این کار عملی شده است و انجام همزمان این دو عمل باعث بهبود کیفیت کار ریزپردازنده و بالا رفتن سرعت آن می شود و زمان واکشی دستورالعمل ها از حافظه را به طور قابل توجهی حذف می کند. به این ایده اصطلاحا پردازش خط لوله اطلاق می شود. در زیر دو شکل رسم شده و و این ایده با شکل مقایسه شده است:

زمانبندی واکشی و اجرای دستورات در 8086

شکل بالایی برای ریزپردازنده ایی است که ایده صف در آن پیاده نشده است و در شکل پایینی هم همان ریزپردازنده با در نظرگرفتن صف دستورالعمل ها رسم شده است.(8086/8088) همانطوریکه ملاحظه می کنید زمان واکشی دستورات از حافظه، برای ریزپردازنده دوم به طور قابل توجهی حذف شده است.

در ابتدا که دستورالعملی برای اجرا وجود ندارد EU کاری انجام نمی دهد ولی در همان موقع BIU در حال واکشی دستورالعمل از حافظه است.

منبع: microrayaneh.com

  منبع: www.picpars.com

  لطفا مقالات، آموزش‌ها و پروژه های خود را به آدرس ایمیل ارتباطی ایمیل نمائید تا آن را با نام خودتان در سایت منتشر کنیم.

به این مطلب امتیاز دهید

برچسب ها:
تاریخ ارسال جمعه، 15 مرداد ماه، 1389    نویسندهنویسنده: مدیریت    نظرات 1 نظر    بازدید بازدید [ 62681 ]   پرینتنسخه چاپی
فایل پی دی اف فایل پی دی اف   ارسال به دوستان ارسال به دوستان   

پروژه شمارش افراد با سنسور مادون قرمز و avr
کد پروژه: MCP-6
عنوان: پروژه شمارش افراد با سنسور مادون قرمز و avr
میکروکنترلر: AVR ==> زبان سی C (کدویژن)
قیمت: به جزئیات پروژه مراجعه نمایید
جزئیات سفارش خرید
این پروژه در اصل یک شمارنده می باشد که می توان عبور مرور افراد از یک گیت را شمارش کرد، شمارنده هم می تواند به صورت بالا شمار و هم پایین شمار کار کند. همچنین توسط شدت نور یک عدد LED می‌توان سنسور فرستنده و گیرنده را در یک راستای مستقیم تنظیم کرد. سنسورها ار نوع مادون قرمز با برد تقریبی 120cm می باشد.
پروژه آلارم صبحگاهی و یادآور با LCD گرافیکی و avr
کد پروژه: MCP-7
عنوان: پروژه آلارم صبحگاهی و یادآور با LCD گرافیکی و avr
میکروکنترلر: AVR ==> زبان سی C (کدویژن)
قیمت: به جزئیات پروژه مراجعه نمایید
جزئیات سفارش خرید
این پروژه در اصل یک ساعت زنگ دار می باشد که قابلیت برنامه ریزی آلارم صبحگاهی و تنظیم 5 برنامه یادآور را دارد. با تنظیم آلارم هر روز راس ساعت تنظیمی آلارم پخش می شود، همچنین با تنظیم یادآور ها در ساعت و تاریخ مشخص نیز آلارم پخش می شود. از امکانات آن می توان برای هر یادآور یک نام تعیین کرد (20 کاراکتر اسکی) با قابلیت تایپ حروف کوچک و بزرگ انگلیسی با کیبورد 3×4 و ...

مرتبط باموضوع :          مطالب بیشتر در این موضوع

 مود می نیمم در ریزپردازنده 8088-8086  [ جمعه، 15 مرداد ماه، 1389 ] 4673 مشاهده
 سیگنالهای وقفه در ریزپردازنده 8086-8088  [ جمعه، 15 مرداد ماه، 1389 ] 6987 مشاهده
 قطعه بندی حافظه ریزپردازنده 8086-8088  [ جمعه، 15 مرداد ماه، 1389 ] 7006 مشاهده
 حافظه و ورودی خروجی ریزپردازنده 68000  [ جمعه، 15 مرداد ماه، 1389 ] 3979 مشاهده
 مقاومت ها و نحوه محاسبه مقدار آنها  [ چهارشنبه، 6 مرداد ماه، 1389 ] 9692 مشاهده
نام شما:
ایمیل شما:
در مورخه : شنبه، 7 خرداد ماه، 1390

سلام

ممکنه راجع به یک وسیله ای که ic 8086 در آن بکار رفته باشه و برنامه مربوط به این IC باشه منو راهنمایی کنید برای پروژه ریز پردازنده لطفا

bahar_1388@yahoo.com

ارسال جوابیه

 
نام شما: [ کاربر جدید ]

نام شما (ضروری): 
ایمیل شما : 
نظر:
کد امنیتی
کد امنیتی

  [ بازگشت ]