دانلود با لینک مستقیم و پر سرعت .
فصل اول : AT89C2051 از شرکت Atmel:
این تراشه 8051 رایج دارای ROM سریع می باشد و طراحی های سریع این نوع حافظه ایده آل است زیرا حافظه سریع می تواند طی چند ثانیه در مقایسه 20 دقیقه لازم برای 8751 پاک شود به این دلیل AT89C2051 بجای 8751 بکار برده شده است تا هنگام پاک کردن تراشه وقتی تلف نشود و به این وسیله ساخت سیستم سریع گردد.
هنگام استفاده از AT89C2051 برای ساخت سیستم های مبتنی بر میکروکنترلر به سوزاننده یا برنامه ریز ROM سریع نیاز داریم با این وجود به پاک کننده ROM نیازی نیست. توجه داشته باشید که در حافظه سریع باید تمام حافظه پاک شود تا بتوان مجدداً آن را برنامه ریزی کرد پاک کردن حافظه سریع یا خود سوزاننده صورت می گیرد به این دلیل پاک کننده جداگانه ای لازم نمی باشد برای حذف سوزاننده PROM ، Atmel روی نوعی از AT89C2051 کار می کند که می تواند از طریق پورت سریال COM یک IBM PC برنامه ریزی شود.
فصل دوم : تجزیه و تحلیل مدار
در این فصل به بررسی جزئیات مدار تایمر اعم از IC و مقاومت و خازن و دیودهای به کار رفته در مدار پرداخته می شود. این مدار توسط میکرو کار می کند و میکروکنترلر آن توسط کریستال 12 مگاهرتز کلاک خورده و توسط IC رگولاتور تغذیه می شود و خروجی آن توسط ترانزیستور تقویت شده و تقویت شدة آن باعث به کار افتادن رله می شود و رله وسیلة برقی را کنترل می کند.
فصل سوم : پیوست ها
در این فصل سورس برنامه میکرو که به زبان اسمبلی است ارائه شده و کلیه اطلاعات منبع در مورد AT89C2051 شامل DATA SHEET و توضیحات برنامه نویسی آن ارائه شده است.
گرایش سخت افزار رشته کامپیوتر گرایشی است که با الکترونیک عجین می باشد.
بطور کلی گرایش الکترونیک به دو بخش عمده تقسیم می شود :
این پروژه که طراحی و ساخت یک تایمر تخصصی است گرایش در الکترونیک دیجیتال دارد و بطور کلی کاربرد الکترونیک دیجیتال و بخش طراحی و استفاده از مدارات مجتمع استوار شده است و طراحی بر اساس مدارات منطقه ای و سیستم باینری می باشد.
ما در اینجا نیاز به داشتن اطلاعات سخت افزاری در زمینه مدارات مجتمع IC ها و همچنین برنامه ریزی و استفاده از آنها داریم.
در این پروژه با استفاده از قطعات سخت افزار یک تایمر طراحی کرده ایم که برنامة میکروکنترلر آن به زبان اسمبلی بوده و در نهایت خروجی اعمالی به رله باعث قطع و وصل شدن وسائل برتر می شود.
فصل اول: میکروکنترلر AT89C 2051
1_1) تاریخچه
با وجود گذشت30 سال از تولد ریز پردازنده تصور وسایل الکترونیکی بدون آنها کار مشکلی است در سال 1971 شرکت اینتل 8080 را به عنوان اولین ریزپردازنده موفق عرضه کرد. مدت کوتاهی بعد از آن موتورولا، RCA و سپس Zilog انواع مشابهی راهمچون 6800، 6502 80Z، را عرضه کردند ، گرچه این مدارها به خودی خود فایده چندانی نداشتند اما بعنوان بخشی از یک کامپیوتر تک بورد برای آموزش طراحی با ریز پردازنده تبدیل شدند.
میکروکنترلر قطعه ای شبیه ریز پردازنده است در سال 1976 اینتل 8748 را به عنوان اولین قطعه خانواده میکروکنترلر های 48_ MCS معرفی کرد. توان، ابعاد و پیچیدگی میکروکنترل ها با اعلام ساخت 8051، یعنی اولین عضو خانواده میکرو کنترلر های _ MCS 51 در 1980 توسط اینتل پیشرفت چشمگیری کرد.
(2-1) خلاصه سخت افزار این قطعه عبارت است از:
4k بایت ROM، 128 بایت RAM ، 4 درگاه ورودی خروجی، 2 تایمر شمارنده 16 بیتی ، رابط سریال ، 64k بایت فضای حافظه خارجی برکد 64x بایت فضای حافظه خارجی برای داده، پردازنده بولی، 210 مکان بیتی آدرس پذیر، انجام عملیات ضرب و تقسیم در 4 میکرو ثانیه .
(1-3-1) تغذیه _پایه های 20=GND و 40=VCC)
میکرو کنترلر با یک تغذیه V5 کار می کند که پایه 40 سر مثبت آن است .
2-2-1)پالس ساعت (پایه های 18 و 19)
این پایه ها جهت اتصال به کریستال نوسان ساز به کار می روند که با مدارات داخلی پالس ساعت سیستم را تولید می کند.
3-2-1) درگاه های موازی( پورت های صفر ف یک ، دو ، سه)
میکرو کنترلر دارای چهار درگاه 8 بیتی است که می تواندعلاوه بر منظور خاص، پایه های ورودی خروجی نیز باشند.
در میان پورت ها، پورت سه کمی با دیگر پورت ها متفاوت است زیراعلاوه بر یک درگاه عمومی هر یک از پایه های عملکرد دیگری نیز می توانند داشته باشند که به شرح زیر است :
لازم به ذکر است که پورت های صفر و دو نیز به عنوان باس آدرس دهی به حافظه خارجی کاربرد دارد و پورت های دو منظوره می باشند.
4-2-1) PSEN( پایه 29، Program Store Enable)
وقتی برنامه از حافظه خارجی اجرا می شود میکرو کنترلر در زمان هایی که لازم است عمل واکنشی انجام دهد این سیگنالها خروجی را فعال (low) می کند که میتواند این سیگنال برای فعال کردن OE حافظه برنامه به کار رود.
5-2-1) ALE( پایه 30، Address Latch Enable)
همانطور که گفته شد درگاه p0 می تواند هم باس داده باشد و هم باس آدرس . وقتی ALE فعال (High) باشد یعنی دیتای روی دیتا باس یک آدرس است و در صورت فعال بودن آن یک داده می باشد
6-2-1) Ea( پایه 31، External Access)
اگر بخواهیم از حافظه برنامه داخلی استفاده نماییم این پایه را غیر فعال (High) می کنیم با فعال کردن این پایه (low) ، شروع حافظه برنامه از آدرس صفر برنامه خارجی خواهد بود و حافظه برنامه داخلی بلا استفاده خواهد ماند
7-2-1)RST( پایه 9، Reset)
بافعال کردن این پایه (high) حداقل به مدت دو سیکل ماشین رجیستر های داخلی میکروکنترلر با مقادیر مناسبی پر شده و میکروکنترلر از آدرس (0000) شروع به اجرای برنامه می کند.
3-1) حافظه داده جزئیات:
فضای حافظه میکرو کنترلر ها عبارتند از:
1- 64 کیلو بایت حافظه داده خارجی از آدرس صفر الی FFFF H
2- 128 بایت (یا 256 بایت ) حافظه داده داخلی از آدرس صفر الی F H 7 (یا از آدرس FF H برای 8052)
3_ 128 بایت حافظه داخلی تحت نام SFR از آدرس H 80 تا FF
4-1) رجیستر های داخلی میکروکنترلر (حافظه داخلی)
رجیستر های داخلی میکروکنترلر ها به دو دسته تقسیم می شوند:
1-4-1) رجیستر های عمومی:
در واقع همان RAM داخلی است و به علت تعداد زیاد آنها به جای اسم به آنها شماره ای نسبت داده اند از H00 الی FH7
2-4-1) رجیستر های SFR یا رجیستر های خاص:
این رجیسترها علاوه بر اینکه رجیستر معمولی هستند هر کدام برای کاربرد خاص هم استفاده می شوند این رجیستر ها ف رجیسترهای مهم CPU بوده و از آدرس H80 الی FF H از RAM داخلی می باشد که فقط به صورت مستقیم قابل دسترسی می باشد
فضای حافظه RAM داخلی( یعنی 128 بایت اول) به سه گروه مجزا تفکیک شده است همه گروه ها به صورت بایتی قابل آدرس دهی هستند اما گروه های II و III خواص دیگری نیز دارند که درزیر شرح می دهیم:
5-1) گروه II( Bite Addressable):
32 بایت اول حافظه RAM داخلی( از آدرس H00 الی FH1) شامل بانک های ثبات می باشد که به چهار گروه A بایتی تقسیم می شود و در هر لحظه 8 بایت از این 32 بایت قابل دسترسی می باشد که به 0R، 1R،2R،3R،... الی 7R نشان داده می شود اینکه 0R الی 7R در هر لحظه بیان کننده کدام یک از این 32 بایت می باشد به دو بیت از رجیستر PSW به نام های 0RS و 1RS که قابل آدرس دهی بیتی می باشند بستگی دارد یعنی مثلا برای (0=0RS، 1=1RS) 0R بیان گر بایت شماره هشتم از RAM داخلی و مثلا 3R بیان گر بایت 11 از RAM داخلی می باشد . استفاده از دستورات رجیستر های بانک ثبات به روش آدرس دهی مستقیم که در ادامه توضیح داده می شود ترجیح دارد.
6-1) ثبات های کنترلی:
1-6-1) ثبات آکومولاتور(Accumulator):
اکومولاتور یا ACC که به اختصار در دستورات A هم نوشته می شد یک رجیستر 8 بیتی بوده که تقریبا بیشتر عملیات انتقال و منطق و شیفت به علت آدرس شدن بیتی روی آن انجام می شود.
2-6-1) ثبات کلمه وضعیت برنامه (program statues word)PSW:
بیت های این ثبات تحت تاثیر بعضی عملیات های میکروپروسسوری (ریاضی یامنطقی) فعال می شوند این ثبات دارای بیت های آدرس پذیر بوده و شامل بیت های زیر می باشد:
بیت پرچم نقلی: هشتمین بیت پرچم این بایت است و یک بیت دومنظوره است اگر در یک عمل جمع یک بیت نقلی از بیت 7 آکومولاتور خارج شود یا در طی عمل تفریق یک بیت فرضی به بیت هفتم وارد شود بیت پرچم نقلی یک می شود
بیت پرچم نقلی کمکی: هنگام جمع کردن اگر یک انتقال از بیت 3 به بیت چار آکومولاتور اتفاق بیفتد پرچم نقلی کمکی یک می شود
بیت پرچم صفر: یک بیت پرچم همه منظوره برای استفاده کاربران است
بیت پرچم سرریز (over flew flag) OV: اگر نتیجه جمع یا تفریق در آکولاموتور جا نشود پرچم سرریز یک می شود که بیانگر ناصحیح بودن نتیجه موجود در آکولاموتور است
بیت توازن (parity bit): این بیت به طور خودکار با توجه به محتوای اکولاموتور صفر یا یک می گردد به طوری که تعداد بیت های یک انباره به اضافه این بیت به تعداد زوج منجر شود
3-6-1) ثبات B: این ثبات یک ثبات 8 بیتی آدرس پذیر می باشد که هم به عنوان یک رجیستر عمومی و هم برای کاربرد خاص در نظر گرفته شده است که کاربرد خاص و اصلی آن انجام عملیات ضرب و تقسیم در آن می باشد.
4-6-1) SP یاحافظه اشاره گر پشته( stack pointer):
SP یک رجیستر 8 بیتی است که آدرس آن خانه H1 8 از RAM داخلی می باشد استفاده از آن زمانی است که نیاز به یک حافظه موقت جهت انجام عملی باشد و نخواهیم محتوای قبلی آن از بین برود و یا هنگامی که بخواهیم به یک برنامه فرعی برویم (مثلا با دستور CALL) اگر لازم باشد بعضی از نتایج برنامه اصلی در جایی ذخیره گردد تا در برنامه فرعی چنانچه مجددا از آنها استفاده کردیم محتوای قبلی آن از بین نرود و با برگشت به برنامه اصلی بتوانیم از آنها استفاده نماییم. شماره آدرس این فضا به وسیله اشاره گر پشته یا SP مشخص می شود (که برای همین باید SP را در ابتدای کار عدد دهی کنیم) و چنانچه این کار انجام نشود میکروکنترلر مقدار H7 0 را برای آن در نظر می گیرد دستورات PUSH و POP مربوط به این قسمت از حافظه می باشد که در مورد آنها در قسمت های بعد توضیح داده می شود
5-6-1) ثبات اشاره گر(Data Pointer Register):
این ثبات دو بایتی بوده و می تواندیک عدد چهار رقمی هگز را در خود ذخیره کند که از آن به عنوان آدرسی برای دستیابی به حافظه کد یا داده خارجی استفاده می شود و آدرس آن H82 و H83 از RAM داخلی درقسمت SFRقرار دارد
فهرست مطالب:
1_1_ تاریخچه................................ 1
2_1_ ساختار میکرو کنترلر 8X51............... 1
3_1_ زمان سنج............................... 18
4_1_ برنامه ریزی اینتراپتها................ 24
5_1_ انتقال سریال........................... 24
فصل دوم : تجزیه و تحلیل مدار تایمر
1_2_ مشخصه ها و خصوصیات مدار................ 26
2_2_ لیست قطعات به کار رفته در مدار......... 26
3_2_ برد.................................... 28
4_2_ مقاومت................................. 29
5_2_ خازن................................... 34
6_2_ دیود یکسوساز........................... 44
7_2_ دیود نورانی (LED)..................... 46
8_2_ آی سی.................................. 49
9_2_ ترانزیستور............................. 50
10_2_ رله................................... 50
11_2_ کلیدهای میکروسوئیچ.................... 51
12_2_ دیپ سوئیچ............................. 51
13_2_ کریستال............................... 51
14_2_ برنامه ریزی میکرو..................... 52
15_2_ طرز کار مدار.......................... 52
16_2_ نتیجه................................. 55
فصل سوم : پیوست ها
سورس برنامه به زبان اسمبلی ................. 56
منابع ...................................... 90
شامل 90 صفحه فایل word قابل ویرایش