فی گوو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

فی گوو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

دانلود مقاله طراحی میکروکنترلر AVR جهت اسکن

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

دانلود مقاله طراحی میکروکنترلر AVR جهت اسکن


دانلود مقاله طراحی میکروکنترلر AVR  جهت اسکن

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

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

در این پروژه سعی شده با استفاده از میکروکنترلر AVR  و صفحه کلید 4×4 تمام کلیدها اسکن می شود.

این پروژه شامل دو قسمت : 1) نرم افزار ، 2) سخت افزار می باشد .

وجود میکروکنترلر باعث شده است مقدار زیادی از سخت افزار را که قبلا مورد استفاده قرار می گرفت حذف نماید . در ادامه به توضیح این دو بخش و نحوه عملکرد AVR پرداخته شده است .

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

اولین ریزپردازنده تک تراشه ای ، ریزپردازنده Intel 4004 بود که توانست دو عدد 4 بیتی دودویی را جمع کند و عملیات متعدد دیگری را انجام دهد .

4004 با معیارهای امروزی یک وسیله کاملا ابتدایی بود که می توانست 4096 مکان مختلف را آدرس دهد. برای حل این مسئله بود که ریزپردازنده 8 بیتی ( 8008 ) به وسیله شرکت Intel معرفی شد .

Intel 8008:

Intel 8008 توانست اعداد 8 بیتی را ( که بایت نامیده می شوند ) به کار گیرد ، که این خود پیشرفت بزرگی نسبت به 4004 بود . تقریبا در همان زمان گشایشی در ساختن مدارهای منطقی NMOS ( نیمه هادی اکسید فلز از نوع N )پیش آمد . منطق NMOS بسیار سریع تر از PMOS است . به علاوه از یک منبع تغذیه مثبت استفاده می کند که آن را برای اتصال به مدارهای منطقی TTL سازگارتر می کند . خصوصیات مذکور از این جهت دارای اهمیت است که بسیاری از مدارهای جنبی ریزپردازنده از نوع TTL هستند . NMOS سرعت ریزپردازنده را با ضریبی در حدود 25 بار افزایش می دهد که رقم چشمگیری است .

این تکنولوژی جدید در ساختمان ریزپردازنده معروف امروزی یعنی Intel 8080 به کار برده شد .

شامل 58 صفحه فایل word قابل ویرایش


دانلود با لینک مستقیم


دانلود مقاله طراحی میکروکنترلر AVR جهت اسکن

دانلود تحقیق بررسی میکروپروسسور و میکروکنترلر 8051

اختصاصی از فی گوو دانلود تحقیق بررسی میکروپروسسور و میکروکنترلر 8051 دانلود با لینک مستقیم و پر سرعت .

دانلود تحقیق بررسی میکروپروسسور و میکروکنترلر 8051


دانلود تحقیق بررسی میکروپروسسور و میکروکنترلر 8051

فصل اول
آشنایی با میکروکنترلرها
 
1-1 مقدمه
گرچه کامپیوترها تنها چند دهه‌ای است که با ما همراهند، با این حال تاثیر عمیق آنها بر زندگی ما با تاثیر تلفن، اتومبیل و تلویزیون رقابت می‌کند. همگی ما حضور آنها را احساس می‌کنیم، چه برنامه نویسان کامپیوتر و چه دریافت کنندگان صورت حسابهای ماهیانه که توسط سیستم‌های کامپیوتری بزرگ چاپ شده و توسط پست تحویل داده می‌شود. تصور ما از کامپیوتر معمولاً داده پردازی است که محاسبات عددی را بطور خستگی ناپذیری انجام می‌دهد.
ما با انواع گوناگونی از کامپیوترها برخورد می‌کنیم که وظایفشان را زیرکانه و بطرزی آرام، کارا و حتی فروتنانه انجام می‌دهند و حتی حضور آنها اغلب احساس نمی شود. ما کامپیوتر‌ها را به عنوان جزء مرکزی بسیاری از فرآورده‌های صنعتی و مصرفی از جمله، در سوپر مارکت‌ها داخل صندوق‌های پول و ترازوها؛ در خانه، در اجاق ها، ماشین‌های لباسشویی، ساعت‌های دارای خبر دهنده و ترموستات ها؛ در وسایل سرگرمی همچون اسباب بازیها، VCRها، تجهیزات استریو و وسایل صوتی؛ در محل کار در ماشین‌های تایپ و فتوکپی؛ و در تجهیزات صنعتی مثل مته‌های فشاری و دستگاههای حروفچینی نوری می‌یابیم. در این مجموعه‌ها کامپیوتر‌ها وظیفه ی کنترل را در ارتباط با دنیای واقعی، برای روشن و خاموش کردن وسایل و نظارت بر وضعیت آنها انجام می‌دهند. میکروکنترلرها (برخلاف میکروکامپیوترها و ریزپردازنده ها) اغلب در چنین کاربردهایی یافت می‌شوند.
با وجود این که بیش از بیست سال از تولد ریز پردازنده نمی گذرد، تصور وسایل الکترونیکی و اسباب بازیهای امروزی بدون آن کار مشکلی است. در 1971 شرکت اینتل، 8080 را به عنوان اولین ریزپردازنده موفق عرضه کرد. مدت کوتاهی پس از آن، موتورولا، RCA و سپس MOS Technology و Zilog انواع مشابهی را به ترتیب به نامهای 6800، 1801، 6502، Z80 عرضه کردند. گرچه این مدارهای مجتمع (ICها) به خودی خود فایده چندانی نداشتند اما به عنوان بخشی از یک کامپیوتر تک بورد (SBC)، به جزء مرکزی فرآورده‌های مفیدی برای آموزش طراحی با ریزپردازنده‌ها تبدیل شدند.
از این SBC‌ها که بسرعت به آزمایشگاه‌های طراحی در کالج ها، دانشگاهها و شرکت‌های الکترونیکی راه پیدا کردند می‌توان برای نمونه از D2 موتورولا، KLM-1 ساخت MOS Technology و SDK-85 متعلق به شرکت اینتل نام برد.
میکروکنترلرقطعه ای شبیه به ریزپردازنده است. در 1969 اینتل 8748 را به عنوان اولین قطعه خانواده‌ی میکروکنترلرهای MCS-48 TM معرفی کرد. 8748 با 17000 ترانزیستور در یک مدار مجتمع، شامل یک CPU، 1 کیلو بایت EPROM، 64 بایت RAM، 27 پایه I/O و یک تایمر 8 بیتی بود. این IC و دیگر اعضای MCS-48 TM که پس از آن آمدند، خیلی زود به یک استاندارد صنعتی در کاربردهای کنترل گرا تبدیل شدند. جایگزین کرن اجزاء الکترومکانیکی در فرآورده‌هایی مثل ماشین‌های لباسشویی و چراغ‌های راهنمایی از ابتدای کار، یک کاربرد مورد توجه برای این میکروکنترلرها بودند و همین طور باقی ماندند. دیگر فرآورده‌هایی که در آن می‌توان میکروکنترلر را یافت عبارتند از اتومبیل ها، تجهیزات صنعتی، وسایل سرگرمی و ابزارهای جانبی کامپیوتر. (افرادی که یک IBM-PC دارند کافی است به داخل صفحه کلید نگاه کنند تا مثالی از یک میکروکنترلر را در یک طراحی با کمترین اجزاء ممکن ببینند).
توان و ابعاد پیچیدگی میکروکنترلرها با اعلام ساخت 8051، یعنی اولین عضو خانواده ی میکروکنترلرهای  MCS-51 TM در 1980 توسط اینتل پیشرفت چشمگیری کرد.در مقایسه با 8048 این قطعه شامل بیش از 60000 ترانریستور، K 4 بایت ROM، 128 بایت ROM، 32 خط I/O، یک درگاه سریال و دو تایمر 16 بیتی است. که از لحاظ مدارات داخلی برای یک IC بسیار قابل ملاحظه است.، (شکل 1-1 را ببینید). امروزه انواع گوناگونی از این IC وجود دارند که به صورت مجازی این مشخصات را دو برابر کرده اند. شرکت زیمنس که دومین تولید کننده ی قطعات MCS-51 TM است SAB80515 را به عنوان یک 8051 توسعه یافته در یک بسته 68 پایه با شش درگاه I/O 8 بیتی، 13 منبع وقفه و یک مبدل آنالوگ به دیجیتال با 8 کانال ورودی عرضه کرده است. خانواده ی 8051 به عنوان یکی ار جامعترین و قدرتمندترین میکروکنترلرهای 8 بیتی شناخته شده و جایگاهش را به عنوان یک میکروکنترلر مهم برای سالهای آینده یافته است. این کتاب درباره ی خانواده ی میکروکنترلرهای MCS-51 TM نوشته شده است. فصل‌های بعدی معماری سخت افزار و نرم افزار خانواده MCS-51 TM را معرفی می‌کند و از طریق مثالهای طراحی متعدد نشان میدهند که چگونه اعضای این خانواده می‌توانند در طراحی‌های الکترونیکی با کمترین اجزاء اضافی ممکن شرکت داشته باشند.
در بخش‌های بعدی از طریق یک آشنایی مختصر با معماری کامپیوتر، یک واژگان کاری از اختصارات و کلمات فنی که در این زمینه متداولند (و اغلب با هم اشتباه می‌شوند) را ایجاد خواهیم کرد. از آن جا که بسیاری اصطلاحات در نتیجه تعصب شرکت‌های بزرگ و سلیقه مولفان مختلف دچار ابهام شده اند، روش کار ما در این زمینه بیشتر عملی خواهد بود تا آکادمیک. هر اصطلاح در متداول ترین حالت با یک توضیح ساده معرفی شده است.
2-1 اصطلاحات فنی
یک کامپیوتر توسط دو ویژگی کلیدی تعریف می‌شود:
(1) داشتن قابلیت برنامه ریزی برای کار کردن روی داده بدون مداخله انسان و
(2) توانایی ذخیره و بازار یابی داده. عموماً یکی سیستم کامپیوتری شامل ابزارهای جانبی برای ارتباط با انسان‌ها به علاوه ی برنامه‌هایی برای پردازش داده نیز می‌باشد. تجهیزات کامپیوتر سخت افزار، و برنامه‌های آن نرم افزار نام دارند. در آغاز اجازه بدهید کار خود را با سخت افزار کامپیوتر و با بررسی شکل 2-1 آغاز می‌کنیم.

 

شامل 84 صفحه word


دانلود با لینک مستقیم


دانلود تحقیق بررسی میکروپروسسور و میکروکنترلر 8051

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

اختصاصی از فی گوو مقاله در مورد میکروکنترلر دانلود با لینک مستقیم و پر سرعت .

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


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

لینک پرداخت و دانلود *پایین مطلب*

 

فرمت فایل:Word (قابل ویرایش و آماده پرینت)

  

تعداد صفحه:11

 

  

 فهرست مطالب

 

میکروکنترلر چیست :

 

کلمه میکروکنترلر:

 

ساختمان داخلی میکروکنترلر:

 

تفاوت میکروپروسسور و میکروکنترلر:

 

معرفی انواع میکروکنترلر

 

معایب و مزایای میکروکنترلر های مختلف

 

میکروکنترلر PIC

 

آی سی میکرو کنترلر

 

 

 

 

 

 

میکروکنترلر چیست :

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

کلمه میکروکنترلر:

این کلمه از دو کلمه 1- میکرو2-کنترلرتشکیل شده

1-میکرو : میدونین که این یک واحد یونانی است و برابر با 10 به توان منفی 6 متر است. یعنی یک ملیونیوم متر واحده خیلی کوچیکیه نه....ولی واحدهای خیلی کوچیکتر از این هم داریم که در الکترونیک مورد استفاده قرار میگیرند در قسمتهای بعدی توضیحیهاتی راجع به این واحد ها و موارد استفاده آنها داده میشه.

2-کنترلر : که همه معنی و مفهومشو میدونین . یعنی کنترل کننده به تعبیری یعنی "مغز " البته بدون تفکر فقط دستوراتی که به اون داده میشه به نحو احسن انجام میده.

حال نحوه انجام دادن کار میکروکنترلر را به صورت کلی بررسی میکنیم

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

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

 


دانلود با لینک مستقیم


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

پروژه در مورد انتقال داده‌های اطلاعاتی در باند M 433 بین دو میکروکنترلر

اختصاصی از فی گوو پروژه در مورد انتقال داده‌های اطلاعاتی در باند M 433 بین دو میکروکنترلر دانلود با لینک مستقیم و پر سرعت .

پروژه در مورد انتقال داده‌های اطلاعاتی در باند M 433 بین دو میکروکنترلر


پروژه در مورد انتقال داده‌های اطلاعاتی در باند M 433 بین دو میکروکنترلر

لینک پرداخت و دانلود *پایین مطلب*

 

فرمت فایل:Word (قابل ویرایش و آماده پرینت)

  

تعداد صفحه:55

 

فهرست

فصل 1: اصول و نحوه عملکرد میکروکنترلرها

فصل 2: اصول و نحوه عملکرد فرستنده ها و گیرنده های رادیویی

فصل 3: مدار فرستنده و گیرنده

 

 

از آنجایی که ساخت و ارائه پروژه یکی از مهمترین ارکان تحصیل یک دانشجو در رشته الکترونیک میباشد لذا انتخاب و ارائه پروژه ای متناسب با رشته تحصیلی بسیار شایان اهمیت است.

 

پروژه ای که در اینجا به بررسی آن می‎پردازیم به ما این امکان را می‎دهد که اطلاعات را در باند 433M بین دو میکروکنترلر انتقال دهیم این کار بصورت بی سیم و بدون استفاده از پورت سریال صورت گرفته ما در این پروژه ابتدا از ماژولهای RF استفاه کردیم اما به دلیل ساخت نامناسب آنها و فرکانس بالایی که ما در آن کار می کردیم شاهد نویزهایی بودیم که نتیجه دلخواه را به ما نمی داد بنابراین برای اخذ نتیجه بهتر تصمیم بر استفاده ازکیتهای PT گرفتیم. PT ها به ما این امکان را می دادند که با کد کردن اطلاعات در برد فرستنده آنها را بدون هیچ پارازیتی درگیرنده ببینیم البته برنامه نویسی مربوط به PT ها نقش مهمی را در این امر ایفا می‎کند که ما در پیوست برنامه فرستنده و گیرنده را خواهیم دید.

 

بدین ترتیب هر عددی که ما در برد و فرستنده بوسیله کیبرد انتخاب می کنیم پس از نمایش روی LCD بوسیله pt22 کد می‎شود و به برد گیرنده فرستاده می‎شود pt22 وظیفه Dcode کردن دیتا را به عهده دارد و پس از بازگشایی کد میکرو آن را روی LCD نمایش می‎دهد.

 


دانلود با لینک مستقیم


پروژه در مورد انتقال داده‌های اطلاعاتی در باند M 433 بین دو میکروکنترلر

پایان‌نامه بررسی میکروپروسسور و میکروکنترلر

اختصاصی از فی گوو پایان‌نامه بررسی میکروپروسسور و میکروکنترلر دانلود با لینک مستقیم و پر سرعت .

پایان‌نامه بررسی میکروپروسسور و میکروکنترلر


پایان‌نامه بررسی میکروپروسسور و میکروکنترلر

 

 

 

 

 

 

فرمت فایل:word  (قابل ویرایش)

تعداد صفحات :95

فهرست مطالب :

فصل اول
آشنایی با میکروکنترلرها
1-1 مقدمه 2
2-1 اصطلاحات فنی 4
3-1 واحد پردازش مرکزی 5
4-1 حافظه نیمه رسانا: RAM و ROM 7
5-1 گذرگاه‌ها: آدرس، داده و کنترل 7
6-1 ابزارهای ورودی/خروجی 9
1-6-1 ابزارهای ذخیره سازی انبوه 9
2-6-1 ابزارهای رابط انسان 10
3-6-1 ابزارهای کنترل/ نظارت 11
8-1 میکروها، مینی‌ها و کامپیوترهای مرکزی 11
9-1 مقایسه ریز پردازنده‌ها با میکروکنترلرها 12
1-9-1 معماری سخت افزار 12
2-9-1 کاربردها 13
3-9-1 ویژگیهای مجموعه ی دستوالعمل‌ها 14
فصل دوم
خلاصه سخت افزار
1-2 مروری بر خانواده MCS–50TM 17
2-2 بررسی اجمالی پایه‌ها 18
1-2-2 درگاه 0 19
2-2-2 درگاه 1 20
3-2-2 درگاه 2 20
4-2-2 درگاه 3 20
5-2-2 PSEN (Program Store Enable) 20
6-2-2 ALE (Address Latch Enable) 21
7-2-2 EA (External Access) 21
8-2-2 RST (Reset) 22
9-2-2 ورودی‌های نوسان ساز روی تراشه 22
10-2-2 اتصالات تغذیه 22
3-2 ساختار درگاه 22
4-2 سازمان حافظه 24
1-4-2 RAM همه منظوره 25
2-4-2 RAM بیت آدرس پذیر 27
3-4-2 بانک‌های ثبات 27
5-2 ثبات‌های کاربرد خاص 28
1-5-2 کلمه وضعیت برنامه 29
1-1-5-2 پرچم نقلی 29
2-1-5-2 پرچم نقلی کمکی 30
3-1-5-2 پرچم 0 30
4-1-5-2 بیت‌های انتخاب بانک ثبات 30
5-1-5-2 پرچم سرریز 30
6-1-5-2 بیت توازن2 31
2-5-2 ثبات B 31
3-5-2 اشاره گر پشته 31
4-5-2 اشاره گر داده3 32
5-5-2 ثبات‌های درگاه 4 33
6-5-2 ثبات‌های تایمر 34
7-5-2 ثبات‌های درگاه سریال 34
8-5-2 ثبات‌های وقفه 34
9-5-2 ثبات کنترل توان4 35
1-9-5-2 حالت معلّق 35
2-9-5-2 حالت افت تغذیه 35
فصل سوم
عملیات درگاه سریال
1-3 مقدمه 37
2-3 ثبات کنترل درگاه سریال 38
3-3 حالت عملکرد 39
1-3-3 ثبات انتقال 8 بیتی (حالت 0) 39
2-3-3 UART بیتی با نرخ ارسال متغیر (حالت1) 40
3-3-3 UART بیتی با نرخ ارسال ثابت (حالت 2) 44
4-3-3 UART بیتی با نرخ ارسال متغیر (حالت 3) 44
4-3 مقدار دهی اولیه و دستیابی به ثبات‌های درگاه سریال 44
1-4-3 فعال ساز گیرنده 44
2-4-3 بیت داده ی نهم 45
3-4-3 افزودن یک بیت توازن 45
4-4-3 پرچم‌های وقفه 46
5-3 ارتباط چند پردازنده ای 46

فصل چهارم
وقفه‌ها
1-4 مقدمه 49
2-4 سازمان وقفه 8051 50
1-2-4 فعال و غیر فعال کردن وقفه‌ها 50
2-2-4 تقدم وقفه 51
3-2-4 ترتیب اجرا 52
3-4 وقفه‌های پردازنده 53
1-3-4 برداری وقفه 54
4-4 طراحی برنامه با استفاده از وقفه 54
1-4-4 روال‌های سرویس وقفه کوچک 55
5-4 تفاوت میکروپروسسور و میکروکنترلر 56
میکروپروسسورها
فصل اول
معرفی میکروپروسسورهای Z-80، 8080 و 8085
1-1 مدل‌های CPU برای میکروپروسسورهای 8080، 8085 و Z-80 58
1-2 مدل‌های برنامه نویسی برای 8080، 8085 و Z-80 63
فصل دوم
ساخت میکروکامپیوتر
2-1 تولید سیگنال ساعت سیستم 66
فصل سوم
ساخت میکروکامپیوتر
3-1 سلسله مراتب حافظه 69
فصل چهارم
ساخت میکروکامپیوتر
4-1 طراحی یک دریچة ورودی 8 بیتی 71
4-2 طراحی یک دریچه خروجی 8 بیتی 71
فصل پنجم
آی سی‌های پشتیبان ویژه:خانواده 8085/ 8080
5-1 A8755، 16KEPROM با I/O 73
5-2 متصل کننده قابل برنامه ریزی وسیله جانبی A8255 73
فصل ششم
آی سی‌های پشتیبان ویژه: خانواده Z-80
6-1 کنترل کنندة ورودی/خروجی موازی Z8400‌ 75
منابع 77

فصل اول
آشنایی با میکروکنترلرها
1-1 مقدمه 
گرچه کامپیوترها تنها چند دهه‌ای است که با ما همراهند، با این حال تاثیر عمیق آنها بر زندگی ما با تاثیر تلفن، اتومبیل و تلویزیون رقابت می‌کند. همگی ما حضور آنها را احساس می‌کنیم، چه برنامه نویسان کامپیوتر و چه دریافت کنندگان صورت حسابهای ماهیانه که توسط سیستم‌های کامپیوتری بزرگ چاپ شده و توسط پست تحویل داده می‌شود. تصور ما از کامپیوتر معمولاً داده پردازی است که محاسبات عددی را بطور خستگی ناپذیری انجام می‌دهد. 
ما با انواع گوناگونی از کامپیوترها برخورد می‌کنیم که وظایفشان را زیرکانه و بطرزی آرام، کارا و حتی فروتنانه انجام می‌دهند و حتی حضور آنها اغلب احساس نمی شود. ما کامپیوتر‌ها را به عنوان جزء مرکزی بسیاری از فرآورده‌های صنعتی و مصرفی از جمله، در سوپر مارکت‌ها داخل صندوق‌های پول و ترازوها؛ در خانه، در اجاق ها، ماشین‌های لباسشویی، ساعت‌های دارای خبر دهنده و ترموستات ها؛ در وسایل سرگرمی همچون اسباب بازیها، VCRها، تجهیزات استریو و وسایل صوتی؛ در محل کار در ماشین‌های تایپ و فتوکپی؛ و در تجهیزات صنعتی مثل مته‌های فشاری و دستگاههای حروفچینی نوری می‌یابیم. در این مجموعه‌ها کامپیوتر‌ها وظیفه ی کنترل را در ارتباط با دنیای واقعی، برای روشن و خاموش کردن وسایل و نظارت بر وضعیت آنها انجام می‌دهند. میکروکنترلرها (برخلاف میکروکامپیوترها و ریزپردازنده ها) اغلب در چنین کاربردهایی یافت می‌شوند. 
با وجود این که بیش از بیست سال از تولد ریز پردازنده نمی گذرد، تصور وسایل الکترونیکی و اسباب بازیهای امروزی بدون آن کار مشکلی است. در 1971 شرکت اینتل، 8080 را به عنوان اولین ریزپردازنده موفق عرضه کرد. مدت کوتاهی پس از آن، موتورولا، RCA و سپس MOS Technology و Zilog انواع مشابهی را به ترتیب به نامهای 6800، 1801، 6502، Z80 عرضه کردند. گرچه این مدارهای مجتمع (ICها) به خودی خود فایده چندانی نداشتند اما به عنوان بخشی از یک کامپیوتر تک بورد (SBC)، به جزء مرکزی فرآورده‌های مفیدی برای آموزش طراحی با ریزپردازنده‌ها تبدیل شدند. 
از این SBC‌ها که بسرعت به آزمایشگاه‌های طراحی در کالج ها، دانشگاهها و شرکت‌های الکترونیکی راه پیدا کردند می‌توان برای نمونه از D2 موتورولا، KLM-1 ساخت MOS Technology و SDK-85 متعلق به شرکت اینتل نام برد. 
میکروکنترلرقطعه ای شبیه به ریزپردازنده است. در 1969 اینتل 8748 را به عنوان اولین قطعه خانواده‌ی میکروکنترلرهای MCS-48 TM معرفی کرد. 8748 با 17000 ترانزیستور در یک مدار مجتمع، شامل یک CPU، 1 کیلو بایت EPROM، 64 بایت RAM، 27 پایه I/O و یک تایمر 8 بیتی بود. این IC و دیگر اعضای MCS-48 TM که پس از آن آمدند، خیلی زود به یک استاندارد صنعتی در کاربردهای کنترل گرا تبدیل شدند. جایگزین کرن اجزاء الکترومکانیکی در فرآورده‌هایی مثل ماشین‌های لباسشویی و چراغ‌های راهنمایی از ابتدای کار، یک کاربرد مورد توجه برای این میکروکنترلرها بودند و همین طور باقی ماندند. دیگر فرآورده‌هایی که در آن می‌توان میکروکنترلر را یافت عبارتند از اتومبیل ها، تجهیزات صنعتی، وسایل سرگرمی و ابزارهای جانبی کامپیوتر. (افرادی که یک IBM-PC دارند کافی است به داخل صفحه کلید نگاه کنند تا مثالی از یک میکروکنترلر را در یک طراحی با کمترین اجزاء ممکن ببینند). 
توان و ابعاد پیچیدگی میکروکنترلرها با اعلام ساخت 8051، یعنی اولین عضو خانواده ی میکروکنترلرهای MCS-51 TM در 1980 توسط اینتل پیشرفت چشمگیری کرد.در مقایسه با 8048 این قطعه شامل بیش از 60000 ترانریستور، K 4 بایت ROM، 128 بایت ROM، 32 خط I/O، یک درگاه سریال و دو تایمر 16 بیتی است. که از لحاظ مدارات داخلی برای یک IC بسیار قابل ملاحظه است.، (شکل 1-1 را ببینید). امروزه انواع گوناگونی از این IC وجود دارند که به صورت مجازی این مشخصات را دو برابر کرده اند. شرکت زیمنس که دومین تولید کننده ی قطعات MCS-51 TM است SAB80515 را به عنوان یک 8051 توسعه یافته در یک بسته 68 پایه با شش درگاه I/O 8 بیتی، 13 منبع وقفه و یک مبدل آنالوگ به دیجیتال با 8 کانال ورودی عرضه کرده است. خانواده ی 8051 به عنوان یکی ار جامعترین و قدرتمندترین میکروکنترلرهای 8 بیتی شناخته شده و جایگاهش را به عنوان یک میکروکنترلر مهم برای سالهای آینده یافته است. این کتاب درباره ی خانواده ی میکروکنترلرهای MCS-51 TM نوشته شده است. فصل‌های بعدی معماری سخت افزار و نرم افزار خانواده MCS-51 TM را معرفی می‌کند و از طریق مثالهای طراحی متعدد نشان میدهند که چگونه اعضای این خانواده می‌توانند در طراحی‌های الکترونیکی با کمترین اجزاء اضافی ممکن شرکت داشته باشند. 
در بخش‌های بعدی از طریق یک آشنایی مختصر با معماری کامپیوتر، یک واژگان کاری از اختصارات و کلمات فنی که در این زمینه متداولند (و اغلب با هم اشتباه می‌شوند) را ایجاد خواهیم کرد. از آن جا که بسیاری اصطلاحات در نتیجه تعصب شرکت‌های بزرگ و سلیقه مولفان مختلف دچار ابهام شده اند، روش کار ما در این زمینه بیشتر عملی خواهد بود تا آکادمیک. هر اصطلاح در متداول ترین حالت با یک توضیح ساده معرفی شده است. 
2-1 اصطلاحات فنی 
یک کامپیوتر توسط دو ویژگی کلیدی تعریف می‌شود: 
(1) داشتن قابلیت برنامه ریزی برای کار کردن روی داده بدون مداخله انسان و 
(2) توانایی ذخیره و بازار یابی داده. عموماً یکی سیستم کامپیوتری شامل ابزارهای جانبی برای ارتباط با انسان‌ها به علاوه ی برنامه‌هایی برای پردازش داده نیز می‌باشد. تجهیزات کامپیوتر سخت افزار، و برنامه‌های آن نرم افزار نام دارند. در آغاز اجازه بدهید کار خود را با سخت افزار کامپیوتر و با بررسی شکل 2-1 آغاز می‌کنیم. 

شکل 1-1: نمودار بلوکی یک سیستم میکروکامپیوتری
نبود جزئیات در شکل عمدی است و باعث شده تاشکل نشان دهنده ی کامپیوتر‌هایی در تمامی اندازه‌ها باشد. همان طور که نشان داده شده است، یک سیستم کامپیوتری شامل یک واحد پردازش مرکزی (cpu) است که از طریق گذرگاه آدرس 2، گذرگاه داده 3 و گذرگاه کنترل 4 به حافظه قابل دستیابی تصادفی 5 (RAM) و حافظه فقط خواندنی6 (RAM) متصل می‌باشد. مدارهای واسطه7 گذرگاه‌های سیستم را به وسایل جانبی متصل می‌کنند. حال اجازه بدهید تا هر یک از اینها را بطور مفصل بررسی کنیم. 
3-1 واحد پردازش مرکزی
CPU، به عنوان «مغز» سیستم کامپیوتری، تمامی فعالیتهای سیستم را اداره کرده و همه ی عملیات روی داده را انجام می‌دهد. اندیشه ی اسرار آمیز بودن CPU در اغلب موارد نادرست است، زیرا این تراشه فقط مجموعه ای از مدارهای منطقی است که بطور مداوم دو عمل را انجام می‌دهند: واکنش 8 دستورالعمل‌ها و اجرای آنها. CPU توانایی درک و اجرای دستورالعمل ها، را بر اساس مجموعه ای از کدهای دودویی دارد که هر یک از این کدها نشان دهنده ی یک عمل ساده است. این دستورالعمل‌ها معمولاً حسابی (جمع، تفریق، ضرب و تقسیم) منطقی (AND، OR، NOT و غیره)، انتقال داده یا عملیات انشعاب هستند و یا مجموعه ای از کدهای دودویی با نام مجموعه ی دستورالعمل‌ها نشان داده 
می شوند. 
شکل 1-2 یک تصویر بی نهایت ساده شده از داخل یک CPU است. این شکل مجموعه ای از ثبات را برای ذخیره سازی موقت اطلاعات، یک واحد عملیات حسابی و منطقی2 (ALU) برای انجام عملیات روی این اطلاعات، یک واحد کنترل و رمزگشایی دستورالعمل 3 (که عملیاتی را که باید انجام شود تعیین می‌کند و اعمال لازم را برای انجام آنها شروع می‌نماید). و دو ثبات اضافی را نشان می‌دهد. 
ثبات دستورالعمل(IR) کد دودویی هر دستورالعمل را در حال اجرا نگه می‌دارد و شمارنده برنامه (PC) آدرس حافظه دستورالعمل بعدی را که باید اجرا شود نشان می‌دهد. 
واکشی یک دستورالعمل از RAM سیستم یکی از اساسی ترین اعمالی است که توسط CPU انجام می‌شود و شامل این مراحل است: (الف) محتویات شمارنده ی برنامه در گذرگاه آدرس قرار می‌گیرد (ب) یک سیگنال کنترل READ فعال می‌شود (پ) داده (کد عملیاتی4 دستورالعمل) از RAM خوانده می‌شود و روی گذرگاه داده قرار می‌گیرد (ت) کد عملیاتی در ثبات داخلی دستورالعمل CPU ذخیره می‌شود و (ث) شمارنده ی برنامه یک واحد افزایش می‌یابد تا برای واکنش بعدی از حافظه آماده شود. شکل 4-1 نشان دهنده ی جریان اطلاعات برای واکشی یک دستورالعمل است. 

شکل 1-3: فعالیت گذرگاه در یک سیکل واکنشی کد عملیاتی
مرحله اجرا مستلزم رمزگشایی کد عملیاتی و ایجاد سیگنالهای کنترلی برای گشودن ثبات‌های درونی به داخل و خارج از ALU است. همچنین باید به ALU برای انجام عملیات مشخص شده فرمان داده شود. به علت تنوع زیاد عملیات ممکن، این توضیحات تا حدی سطحی می‌باشند و در یک عملیات ساده مثل «افزایش یک واحدی ثبات»1 مصداق دارند. دستورالعمل‌های پیچیده تر نیاز به مراحل بیشتری مثل خواندن بایت دوم و سوم به عنوان داده ی برای عملیات دارند. 
یک سری از دستورالعمل‌ها که برای انجام یک وظیفه ی معنادار ترکیب شوند برنامه یا نرم افزار نامیده می‌شوند، و نکته واقعاً اسرار آمیز درهمین جا نهفته است. معیار اندازه برای انجام درست وظایف، بیشتر کیفیت نرم افزار است تا توانایی تحلیل CPU سپس برنامه‌ها CPU را راه اندازی می‌کنند و هنگام این کار آنها گهگاه به تقلید از نقطه ضعف‌های نویسندگان خود، اشتباه هم می‌کنند. عباراتی نظیر کامپیوتر اشتباه کرد، گمراه کننده هستند. اگر چه خرابی تجهیزات غیر قابل اجتناب است اما اشتباه در نتایج معمولاً نشانی از برنامه‌های ضعیف یا خطای کاربر می‌باشد. 
4-1 حافظه نیمه رسانا: RAM و ROM 
برنامه‌ها و داده‌ها در حافظه ذخیره می‌شوند. حافظه‌های کامپیوتر بسیار متنوعند و اجزای همراه آنها بسیار، و تکنولوژی بطور دائم و پی در پی موانع را برطرف می‌کند، بگونه ای که اطلاع از جدیدترین پیشرفت‌ها نیاز به مطالعه ی جامع و مداوم دارد. حافظه‌هایی که بطور مستقیم توسط CPU قابل دستیابی می‌باشند، IC‌های (مدارهای مجتمع) نیمه رسانایی هستند که RAM و ROM نامیده می‌شوند. دو ویژگی RAM و ROM حافظه خواندنی / و نوشتنی است در حالی که ROM حافظه ی فقط خواندنی است و دوم آن که RAM فرّار است (یعنی محتویات آن هنگام نبود ولتاژ تغذیه پاک می‌شود) در حالی که ROM غیر فرّار می‌باشد. 
اغلب سیستم‌های کامپیوتری یک دیسک درایو و مقدار اندکی ROM دارند که برای نگهداری روال‌های نرم افزاری کوتاه که دائم مورد استفاده قرار می‌گیرند و عملیات ورودی/ خروجی را انجام می‌دهند کافی است. برنامه‌های کاربران و داده، روی دیسک ذخیره می‌گردند و برای اجرا به داخل RAM بارمی شوند. با کاهش مداوم در قیمت هر بایت RAM، سیستم‌های کامپیوتری کوچک اغلب شامل میلیون‌ها بایت RAM می‌باشند. 
5-1 گذرگاه‌ها: آدرس، داده و کنترل 
یک گذرگاه عبارت است از مجموعه ای از سیم‌ها که اطلاعات را با یک هدف مشترک حمل می‌کنند. امکان دستیابی به مدارات اطراف CPU توسط سه گذرگاه فراهم می‌شود: گذرگاه آدرس، گذرگاه داده و گذرگاه کنترل. برای هر عمل خواندن یا نوشتن، CPU موقعیت داده (یا دستورالعمل) را با قرار دادن یک آدرس روی گذرگاه آدرس مشخص می‌کند و سپس سیگنالی را روی گذرگاه کنترل فعال می‌نماید تا نشان دهد که عمل مورد نظر خواندن است یا نوشتن. عمل خواندن، یک بایت داده را از مکان مشخص شده در حافظه بر می‌دارد و روی گذرگاه داده قرار می‌دهد. CPU داده را می‌خواند و در یکی از ثبات‌های داخلی خود قرار می‌دهد. برای عمل نوشتن CPU داده را روی گذرگاه داده می‌گذارد. حافظه تحت تاثیر سیگنال کنترل، عملیات را به عنوان یک سیکل نوشتن، تشخیص می‌دهد و داده را مکان مشخص شده ذخیره می‌کند. 
اغلب، کامپیوترهای کوچک 16 و 20 خط آدرس دارند. با داشتن n خط آدرس که هر یک می‌توانند در وضعیت بالا (1) یا پایین (0) باشند، n2 مکان قابل دستیابی است. بنابراین یک گذرگاه آدرس 16 بیتی می‌تواند به 65536=16 2 مکان، دسترسی داشته باشد و برای یک آدرس 20 بیتی 1048576=20 2 مکان قابل دستیابی است. علامت اختصاری K (برای کیلو) نماینده ی 1024=10 2 می‌باشد، بنابراین 16 بیت می‌تواند K 64=10 2 ×6 2 مکان را آدرس دهی کند در حالی که 20 بیت می‌تواند K 1024=10 2×10 2 (یاMeg1) را آدرس نماید. 
گذرگاه داده اطلاعات را بین CPU و حافظه یا بین CPU و قطعات O/I منتقل می‌کند. تحقیقات دامنه داری که برای تعیین نوع فعالیت‌هایی که زمان ارزشمند اجرای دستورالعمل‌ها را در یک کامپیوتر صرف می‌کنند، انجام شده است نشان می‌دهد که کامپیوترها دو سوم وقتشان را خیلی ساده صرف جابجایی داده می‌کنند. از آنجا که عمده ی عملیات جابجایی بین یک ثبات CPU، RAM و ROM خارجی انجام می‌شود تعداد خط‌های (یا پهنای) گذرگاه داده در کارکرد کلی کامپیوتر اهمیت شایانی دارد. این محدودیت پهنا، یک تنگنا به شمار می‌رود: ممکن است مقادیر فراوانی حافظه در سیستم وجود داشته باشد و CPU از توان محاسباتی زیادی برخوردار باشد اما دسترسی به داده – جابجایی داده بین حافظه و CPU از طریق گدرگاه داده – توسط پهنای گذرگاه داده محدود می‌شود. 
به علت اهمیت این ویژگی، معمول است که یک پیشوند را که نشان دهنده ی اندازه این محدودیت است اضافه می‌کنند. عبارت کامپیوتر 16 بیتی به کامپیوتری با 16 خط در گذرگاه داده اشاره می‌کند. اغلب کامپیوترها در طبقه بندی 4 بیت، 8 بیت، 16 بیت یا 32 بیت قرار می‌گیرند و توان محاسبات کلی آنها با افزایش پهنای گذرگاه داده، افزایش می‌یابد. 
فصل دوم
خلاصه سخت افزار
1-2 مروری بر خانواده MCS–50TM 
MCS–50TM خانواده ای از میکروکنترلرهاست که توسط شرکت اینتل به بازار عرضه شده است. دیگر تولید کنندگان IC نظیر زیمنس، AMD، فوجیتسو و فیلیپس به عنوان تولید کنندگان ثانویه، ICهای این خانواده را تحت مجوز اینتل تولید می‌کنند. هر میکروکنترلر این خانواده از امکاناتی مناسب با یک سری طراحی‌های مشخص برخوردار است.
در این فصل معماری سخت افزار خانواده‌ی MCS–50TM معرفی می‌شود. برگه اطلاعات اینتل را برای ابزارهای سطح ورودی 1 (مثل8051AH) در ضمیمه ی ث می‌توان یافت. برای جزئیات بیشتر، مثل مشخصات الکتریکی این ابزارها باید به این ضمیمه مراجعه کرد. 
بسیاری از مشخصات سخت افزاری با چند دستوالعمل توضیح داده شده اند. برای هر مثال شرح مختصری داده شده، اما جزئیات کامل مجموعه دستوالعمل‌های 8051 به فصل 3 موکول شده است. همچنین برای خلاصه دستوالعمل‌های 8051 به ضمیمه الف و برای تعریف هر دستور می‌توانید به ضمیمه پ مراجعه کنید. 
8051 یک IC نوعی و اولین عضو این خانواده است که بصورت تجاری مطرح شد. خلاصه مشخصات این IC از این قرار است: 
4K بایت ROM 
128 بایت RAM 
چهار درگاه I/O (ورودی- خروجی) هشت بیتی دو تایمر 
دو تایمر/ شمارنده2 16 بیتی 
رابط سریال3 
K64 بایت فضای حافظه خارجی برای کد 
K64 بایت فضای حافظه خارجی برای داده 
پردازنده‌ی بولی4 (که عملیات روی بیت‌ها را انجام می‌دهد) 
210 مکان بیتی آدرس پذیر5 
انجام عملیات ضرب و تقسیم در 4 میکروثانیه
دیگر اعضای خانواده MCS–50TM هر یک امکانات دیگری از قبیل ROM روی تراشه6، EPROM،RAM روی تراشه و یا یک تایمر سوم را دارا هستند. در ضمن هر یک از انواع ICهای این خانواده یک نسخه مشابه با CMOS کم مصرف7 نیز دارد (جدول1-2). 
عبارت 8051 از روی تسامح به کل خانواده ی میکروکنترلرهای MCS–50TM اطلاق می‌شود. هرگاه بحث روی IC خاصی از این خانواده متمرکز شود شماره ی قطعه مورد نظر ذکر خواهد شد. مشخصاتی که در بالا به آنها اشاره شد در نمودار بلوکی شکل 1-2 نشان داده شده اند.
2-2 بررسی اجمالی پایه‌ها 
در این بخش، معماری سخت افزار8051 با نگاهی از بیرون به پایه‌های آن، معرفی می‌شود (شکل 2-2) و در ادامه شرح مختصری از عملکرد هر پایه ارائه می‌گردد. 
همانطور که در شکل 2-2 دیده می‌شود 32 پایه از 40 پایه 8051 به عنوان خطوط درگاه I/O عمل می‌کنند. معهذا 24 خط از این خطوط دو منظوره هستند (26 خط در 8032/8052). هر یک از خطوط می‌توانند به عنوان I/O یا خط کنترل و یا بخشی از گذرگاه آدرس یا گذرگاه داده به کار روند. در طراحی‌هایی که با کمترین مقدار حافظه و دگر قطعات خارجی انجامی می‌شوند، از این درگاههابه عنوان I/O همه منظوره استفاده می‌کنند. هر هشت خط یک درگاه می‌تواند به صورت یک واحد در ارتباط با وسایل موازی مانند چاپگرها و مبدل‌های دیجیتال به آنالوگ بکار رود. و یا خط به تنهایی با وسایل تک بیتی مثل سوئیچ ها، LEDها، ترانزیستورها، سیم پیچ ها1، موتورها و بلندگوها ارتباط برقرار کند.

شکل 2-2: پایه‌های 8051
1-2-2 درگاه 0 
درگاه 0، یک درگاه دو منظوره از پایه‌ی 32 تا 39 تراشه 8051 می‌باشد. این درگاه در طراحی‌های با کمترین اجزای ممکن به عنوان یک درگاه I/O عمومی استفاده می‌شود. در طراحی‌های بزرگتر که از حافظه خارجی استفاده می‌کنند، این درگاه یک گذرگاه آدرس و داده مالتی پلکس شده می‌باشد. 
2-2-2 درگاه 1 
درگاه 1 درگاه اختصاصی I/O روی پایه‌های 1 تا 8 است. پایه‌های 0.P1 تا 7.p1 در صورت نیاز برای ارتباط با وسایل خارجی بکار می‌روند. وظیفه دیگری برای پایه‌های درگاه 1 درنظر گرفته نشده است، بنابراین آنها گهگاه برای ارتباط با وسایل خارجی بکار می‌روند. استثناء در ICهای 8032/8052 که از p1.0 و p1.1 به عنوان خطوط I/O و یا ورودی تایمر سوم استفاده می‌شود. 
3-2-2 درگاه 2 
درگاه 2 (پایه‌های 21تا 28) یک درگاه دو منظوره است که به عنوان I/O عمومی و یا بایت بالای گذرگاه آدرس در طراحی با حافظه کد خارجی به کار می‌رود. این درگاه همچنین د طراحی‌هایی که به بیش از 256 بایت از حافظه داده خارجی نیاز دارند نیز استفاده می‌شود. 
4-2-2 درگاه 3 
درگاه 3 یک درگاه دو منظوره روی پایه‌های 10 تا 17 می‌باشد. علاوه بر I/O عمومی این پایه‌ها هر یک وظایف دیگری نیز در رابطه با امکانات خاص 8051 دارند. وظایف خاص پایه‌های درگاه 3 و درگاه2 در جدول 2-2 خلاصه شده است. 
5-2-2 PSEN (Program Store Enable) 


دانلود با لینک مستقیم


پایان‌نامه بررسی میکروپروسسور و میکروکنترلر