فرمت فایل:Word (قابل ویرایش و آماده پرینت)
تعداد صفحه:20
پايان نامه تحصيلي دوره كارداني پيوسته برق صنعتي
فهرست مطالب :
پروژه....................................... 1
ميكروكنترلر در برابر ميكروپروسسورهاي همه منظوره 2
ميكروكنترلر AT89C51.......................... 3
توصيف پايه هاي 89C51......................... 4
1- XTAL2 , XTAL1......................... 5
2- RST................................. 5
3-.................................. 5
4- ............................... 6
5- ALE................................. 6
پايه هاي پورت I/O............................ 6
پورت (P0)0 به عنوان ورودي.................... 7
سنسور دما LM35.............................. 7
شكل دهي سيگنال و اتصال LM35 به AT89C51 8
تراشه ADCO804 و اتصال آن AT89C51............. 9
پايه هاي ADCO804............................ 9
1- CS.................................. 9
2- RD (خواندن)......................... 10
3- WR (نوشتن؛ نام بهتر آن “آغاز تبديل” است) 10
CLIR , CLKIN.................................. 10
INTR (وقفه ، نام بهتر آن “پايان تبديل” است) 11
VIN (-), VIN (+).................................. 11
VREF/2....................................... 11
DO-D7....................................... 12
A-GND (زمين آنالوگ) D-GND (زمين ديجيتال) 12
نتيجه گيري از معرفي پايه هاي ADCO804........ 12
اتصال صفحه كليد به CPU (ميكروكنترلر AT89C51 ) 13
پويش و شناسايي كليد فشرده شده .............. 14
اتصال LCD به AT89C51......................... 14
VEE, VSS, VCC................................. 15
RS (انتخابگر ثبات).......................... 15
R/W (خواندن و نوشتن)........................ 15
E (فعال).................................... 15
DO-D7....................................... 16
ارسال فرمان به LCD.......................... 18
ارسال داده ها به LCD........................ 18
خروجي هاي مدار ............................. 18
چکیده :
پروژه:
پروژه مورد نظر كنترل اتوماتيك دما با استفاده از ميكروكنترلر AT89C51 مي باشد كه بطور مختصر بدين ترتيب است كه دما توسط يك سنسور حرارتي لمس شده و سپس اين دما توسط يك مبدل آنالوگ به ديجيتال (ADC) به ميكرو داده شده و ميكرو با استفاده از برنامه ريزي كه از قبل شده است كه سه دما براي سنجش دارد اگر دماي مورد نظر را T بناميم در اين صورت عملكرد ميكروكنترلر در خروجي بصورت زير است:
اگر T
اگر T1<T
و اگر T2<T
و اگر T>T3 باشد رله شماره IV فعال مي گردد.
شماره رله مورد نظر
و يكي از خروجي هاي ميكروكنترلر به يك Display وصل است كه از نوع LCD بوده و مي توان دماي T1 و T2 و T3 مورد نظر را وارد كرد و همچنين پيغام اينكه كدام رله فعال است را در آن مشاهده كرد Relay # is active كه هر قسمت مدار مفصل توضيح داده مي شود.
ميكروكنترلر در برابر ميكروپرسسورهاي همه منظوره:
منظور از يك ميكروپرسسور (ريزپردازنده ) ميكروپرسسورهايي از خانواده Intel همانند X86 مثل و …. اين ميكروپرسسورها فاقد و پورت هاي I/O در درون خود تراشه هستند به اين دليل به آنها ميكروپرسسورهاي همه منظوره گويند.
طراحي سيستمي كه از ميكروپرسسورهاي همه منظوره استفاده مي نمايد بايد در خارج آن RAM و ROM ، پورت هاي I/O و تايمرها را اضافه نمود تا سيستمي قابل كار ساخته شود اين افزايش به قابليت انعطاف آنها مي افزايد اين توانمندي در ميكروكنترلرها امكان پذير نيست يك ميكروكنترلر داراي يك cpu به همراه مقدار ثابتي از RAM ، ROM ، پورت هاي I/O و تايمر درون خود مي باشد بنابراين طراح نمي تواند يك حافظه، I/O يا تايمري را بدون گسترش لازم آن از بيرون اضافه نمايد مقدار ثابت
RAM و ROM و مقدار پورت هاي تثبيت شده در ميكروكنترلرها آنها را براي كاربردهائي كه قيمت و محفظه در آنها بحراني است ايده آل كرده است.
ROM
RAM
CPU
پورت ها سريال Com
تايمر
I/O
الف ) ميكروپرسسور (2) ب) ميكروكنترلر
ميكروكنترلر AT89C51 :
ميكروكنترلر AT89C51 ساخت كمپاني Atmel در حقيقت همان ميكروكنترلر 8051 ساخت شركت Intel مي باشد كه Intel آن را MCS-51 مي نامد. بااين تفاوت كه اين ميكروكنترلر داراي ROM سريع مي باشد در طراحي هاي سريع اين نوع حافظه ايده ال است زيرا حافظه سريع مي تواند طي چند ثانيه پاك شود تا هنگام پاك كردن تراشه وقتي تلف نشود و بدينوسيله ساخت سيستم سريع مي گردد هنگام استفاده از AT89C51 نيازي به پاك كننده ROM نيست زيرا اين كار توسط سوزاننده (برنامه ريز) صورت مي گيرد جدول زير خصوصيات كلي AT89C51 را بيان مي كند.
توجه اينكه حرف C قبل از 51 به معني CMOS بوده بنابراين توان مصرفي كمي دارد.
توصيف پايه هاي 89C51 :
اعضاء خانواده 89C51 در بسته بندي هاي متفاوتي عرضه مي شوند از جمله QFP, DIP و Lcc ولي ميكروكنترلر مورد بحث ما از نوع بسته بندي DIP مي باشد.
همانطور كه در كاتالوگ ضميمه ديده مي شود در اين نوع بسته بندي ميكروكنترلر 40 پايه دارد كه از 40 پايه فوق 32 پايه براي چهار پورت ورودي و خروجي P2,P1,P0 و P3 استفاده شده اند بقيه پايه ها به اختصاص يافته اند شش پايه (EA, RST, XTAL2, XTAL1,GND,Vcc) از هشت پايه فوق بوسيله همه اعضاء خانواده 8051 بكار رفته اند.
Vcc :
پايه 40 ولتاژ تغذيه را براي تراشه فراهم مي كند ولتاژ منبع +5v است.
GND :
پايه 20 زمين است.
XTAL2 , XTAL1 :
89C51 داراي يك اسيلاتور (نوسان ساز) درون تراشه اي است ولي براي راندن آن به يك ساعت كريستال نياز است اغلب يك اسيلاتور كريستال كوارتر به ورودي هاي XTAL1 (پايه 19) و XTAL2 (پايه 18) وصل است اين اسيلاتور به دو خازن 33PF وصل مي باشد يك طرف هر يك از خازنها مثل كاتالوگ به زمين وصل است.
RST :
پايه 9 ، پايه Reset (بازنشاني) است اين پايه يك ورودي فعال بالاست بعد از اعمال يك پالس بالا به اين پايه، ميكروكنترلر بازنشانده شده و همه فعاليت ها را رها مي كند اغلب به اين حالت بازنشاني به هنگام روشن شدن مي گويند فعال كردن يك بازنشاني به هنگام روشن شدن موجب از دست رفتن همه مقادير در ثبات ها مي شود.
كه به معني “دستيابي بيروني” است پايه شماره 31 در بسته بندي DIP است كه در ميكروكنترلرهائي كه ROM آن درون خود تراشه است به Vcc و در ميكروكنترلرهائي مانند 8031/32 كه ROM بيرون از تراشه است به GND وصل مي شود تا مشخص باشد كه برنامه در بيرون ذخيره شده و توسط 8031/32 به داخل تراشه كشيده شود.
اين يك پايه خروجي است به معني فعال كردن برنامه ذخيره است در يك سيستم مبني بر 8051 يا AT89C51 كه در آن ROM بيروني تهويه شده اين پايه متصل به پايه OE از ROM است و پايه EA از ميكروكنترلر به زمين وصل است تا بتواند ميكروكنترلر كدهاي برنامه را از ROM بيروني برداشت نمايد.
ALE :
ALE (فعال ساز لچ آدرس) يك پايه خروجي فعال بالاست وقتي 89C51 به يك حافظه بيروني وصل مي شود پورت (0) و (P0) هر دو مقدار داده و آدرس را تهيه مي كند پايه ALE براي دي مولتي پلكس كردن آدرس و داده بكار مي رود و در آن پايه G از تراشه 74LS373 وصل مي گردد 74LS373 يك لچ مي باشد وقتي ALE صفر است داده در P0 قرار مي گيرد وقتي ALE يك است آدرس در P0 فراهم مي شود.
پايه هاي پورت I/O :
چهار پورت P3,P2,P1,P0 هر كدام 8 پايه را بكار مي برند تا پورت 4 را 8 بيتي سازند همه پورت ها پس از Reset بصورت خروجي در مي آيند و آماده استفاده بعنوان خروجي هستند براي استفاده هر يك از اين پورت ها بعنوان ورودي بايد آنها را برنامه ريزي نمود كه در اينجا پورت P0 بعنوان ورودي بكار رفته توضيح داده مي شود.
پورت 0 (P0) بعنوان ورودي :
پورت P0 را مي توان هم بعنوان ورودي يا خروجي استفاده كرد براي استفاده از P0 بعنوان ورودي و خروجي هر پايه بايد از بيرون به يك مقاومت بالاكش وصل شود.
براي آنكه P0 را به ورودي تبديل نمائيم بايد با نوشتن تمام 1 برنامه ريزي شود در كد زير پورت 0 ابتدا با نوشتن 41 بصورت ورودي آرايش مي يابد و سپس داده از آن پورت دريافت و به P1 ارسال مي شود.
و...