فی فوو

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

فی فوو

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

تحقیق درباره تولید با استفاده از میکروتوربین ها توزیع

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

تحقیق درباره تولید با استفاده از میکروتوربین ها توزیع


تحقیق درباره تولید با استفاده از میکروتوربین ها توزیع

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

 

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

 

تعداد صفحه:8

فهرست و توضیحات:

مقدمه

بیان مسأله

اهمیت موضوع

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

هزینه انتقال و توزیع برق سهم بالائی از هزینه تولید انرژی را در بر می گیرد این میزان برای شبکه های رایج تا 500 دلار به ازای هر KW  می رسد. در مسیر انتقال و توزیع الکتریسیته تا 7% انرژی هدر می رود بنابراین چنانچه توزیع تولید جایگزین انتقال و توزیع الکتریسیته گردد هزینه انرژی الکتریکی به مقدار قابل توجهی کاهش خواهد یافت. در صنعت برق آمریکا در دهه 1990 توزیع تولید گسترش بیشتری یافته بطوریکه 20% نیروگاههای جدیدالتاسیس از نوع واحدهای کوچک می باشند. براساس اطلاعات موجود در حدود 10 GW از نیروگاههای موجود در گستره 1-10 MW می باشند که حدود 80% آن را نیروگاههای دیزلی (رفت و برگشت) تشکیل می دهند. قسمت اعظم واحدهای کوچک تولید برق توسط کارخانه کاترپیلار (Caterpillar) ساخته شده اند. جنرال الکتریک (GE) ، زیمنس و ABB نیز در این زمینه با کاترپیلار رقابت دارند موتورهای رفت و برگشتی از لحاظ اقتصادی بسیار مقرون به صرفه بوده و قطعات یدکی و سرویس آنها نیز به سادگی در سراسر دنیا در دسترس است ولی نکته منفی این ماشینها نگهداری و آلودگی ایجاد شده توسط آنهاست. گرچه تلاشهای زیادی در زمینه بهبود این دو مسئله برای ماشینهای رفت و برگشتی می شود ولی میکروتوربینها از لحاظ نگهداری و ایجاد آلودگی وضعیت بهتری در مقایسه با موتورهای دیزلی دارند.

زمانیکه میکروتوربین مدل 330 توسط کپستون ارائه شد موجب معرفی فن آوری جدید میکروتوربین گردید. البته تاکنون یک تعریف دقیق برای میکروتوربین نشده است ولی معمولا" این لفظ برای توربین های گازی با سرعت بالا در گستره قدرت 15-300 KW بکار می رود. صنعت میکروتوربین در چند تکنولوژی توربین های گازی کوچک، مولدهای کمکی و اتوموبیل های توربو مطرح گردید. هسته اصلی یک میکروتوربین قسمت توربین - کمپرسور است که با سرعت بسیار بالا دوران می کند (در مدل Capstone 330 سرعت دوران 96000rpm  می باشد) و در امتداد آن ژنراتور با سرعت بالا وجود دارد که دارای مغناطیس های دائمی است. یک پارامتر کلیدی جهت کاهش اصطکاک استفاده از یاتاقانهای هوائی یا بعبارتی یاتاقانهای گازی است که ضمن کاهش اصطکاک عمر یاتاقان را نیز افزایش داده و امکان داشتن سرعت بالا را فراهم می کند.


ا


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


تحقیق درباره تولید با استفاده از میکروتوربین ها توزیع

تحقیق درباره آموزش میکرو کنترلر 8051

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

تحقیق درباره آموزش میکرو کنترلر 8051


تحقیق درباره آموزش میکرو کنترلر 8051

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

 

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

 

تعداد صفحه:66

فهرست و توضیحات:

چکیده

مقدمه

بیان مسأله

اهمیت موضوع

آموزش میکرو کنترلر 8051

 

تشریح پایه های 8051 و RAM و ROM داخلی آن

8051 دارای 4 پورت ورودی یا خروجی می باشد یعنی اینکه هر کدام از این پورت ها را می توان در یک لحظه به عنوان ورودی استفاده کرد و همان پورت را دوباره در یک لحظه دیگر به عنوان خروجی از آن استفاده کرد. منظور از پورت چیست؟ پورت در میکرو یعنی 8 عدد پین یا 8 خط دیتا یا ذر اصطلاح 8بیتی، که 8051 دارای 4 پورت 8 بتی یعنی 32 پایه می باشد.

میکرو کنترلر AT89C51 دارای 128 بایت RAM و 4KB حافظه برنامه ROM می باشد. و AT89C52 دارای 256 بایت RAM و 8KB حافظه برنامه ROM می باشد. و AT89C55 دارای 256 بایت RAM و 20KB حافظه برنامه ROM می باشد. که بستگی به حجم برنامه ما دارد که از کدام میکرو استفاده کنیم.

کاربرد RAM چست؟ اصلا به چه دردی می خوره؟

RAM یعنی random access memory حافظه با دستیابی تصادفی. از این حافظه برای ذخیره اطلاعات موقت استفاده می شود یعنی اینکه تا زمانی که تغذیه میکرو وصل باشد این اطلاعات از بین نمی روند و با قطع کردن تغذیه این اطلاعات از بین می روند. ما در میکرو 8 ثبات 8 بتی برای ذخیره کردن داده  ها داریم در بعضی از مواقع پیش می آید که این 8 ثبات در کل برنامه استفاده شوند و ما به یک ثبات 8 بیتی برای ذخیره سازی داده ها داریم مثلا یک شمارنده طراحی کردیم و همه ثبات ها هم استفاده شده و ما مثلا به دو ثبات احتیاج داریم که می توانیم از هر کدام از خانه های RAM استفاده کنیم. منظور از اطلاعات همان داده های 8 بیتی می باشند یعنی همون 0 یا 1 ها که به 8 تا از آنها یک بایت یا یک داده 8 بیتی می گویند.


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


تحقیق درباره آموزش میکرو کنترلر 8051

مقاله و پروژه های الکترونیک و میکرو

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

مقاله و پروژه های الکترونیک و میکرو


 مقاله و پروژه های الکترونیک و میکرو

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

 

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

 

تعداد صفحه:21

 

فهرست

 

پروژه های الکترونیک و میکرو

کیتهای آماده

آموزش برنامه نویسی پورت

اینترفیس پورت(آموزش بصورت pdf)

مقالات و راهنماهای ساخت عملی

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

پروِژه اینترفیس پورت سریال کامپیوتر و میکرو( تبادل داده از کامپیوتر به میکرو)

- توضیحات پایه های میکرو

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

پروِژه اینترفیس پورت پارالل کامپیوتر و میکرو( تبادل داده از کامپیوتر به میکرو)

راه اندازی موتور DC بصورت چپگرد – راستگرد با میکرو کنترلر و کامپیوتر

 

نمونه برنامه ویژوال بیسیک برای شماره گیری تلفن

تشخیص کلید فشرده شده روی خط تلفن (dtmf) توسط آی سی 8870

شماره گیری تلفن به روش پالس توسط میکرو

فارسی نویسی بر روی LCD های کاراکتری

 

مقدمه

 

پروژه های الکترونیک و میکرو

 

کیتهای آماده : ماشین حساب پروگرامری با نمایشگر 10 رقمی ( AT89S51 ) رادار اولتراسونیک آپارتمان کامپیوتربا این کیت خانه اتان را به کمک کامپیوتر خود کاملا اتوماتیک نمایید . تایمر دیجیتال 0 تا 99 دقیقه پروگرامری ( PIC12C508 )تایمری همه کاره با نمایشگر دو رقم

تایمر دیجیتال پروگرامری با نمایشگر 4 رقمی ( PIC16F84 )  شاید تاکنون چند کیت تایمر ساخته باشید ولی باورکنید این کیت با آنها فرق دارد . زمان را به صفحه دیجیتال وارد کنید و کلید START را بزنید . بهره گیری از آی سی های میکروکنترل کار را آسان کرده است .

کرنومتر پروگرامری ( AT89C51 )  زمان سنج ورزشی ایده آل با اندازه گیری ثانیه و دهم ثانیه ساعت و تقویم پروگرامری 6 رقمی ( AT89C2051 )  با این کیت تقویمی دیجیتال که روز ماه و سال را  نشان خواهد داد و در عین حال

 ساعتی دیجیتال خواهید داشت .


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


مقاله و پروژه های الکترونیک و میکرو

دانلود پروژه Wave Player با استفاده از میکرو AVR به دو زبان بسکام و کدویژن

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

دانلود پروژه Wave Player با استفاده از میکرو AVR به دو زبان بسکام و کدویژن


دانلود پروژه Wave Player با استفاده از میکرو AVR به دو زبان بسکام و کدویژن

 

دانلود پروژه Wave Player با استفاده از میکرو AVR به دو زبان بسکام و کدویژن

 

 

 

 

در اینجا سه مدل Wave Player قرار داده ایم که یکی به زبان C و دوتای دیگر به زبان بیسیک هستند.در واقع فایلهای Wave فایلهای صوتی هستند که بدون هیچ گومه کد بندی در حافظه ذخیره میشوند و ما برای آشکار سازی این مدل فایلها فقط کافی است که 8 بیت موجود در حافطه را واکشی و آنرا بر روی یک بلند گو آشکار نماییم که برای آشکار سازی فقط کافی است که این 8 بیت را به یک مبدل دیجیتال به آنالوگ بدهیم.در میکروهای AVR میتوانیم این 8 بیت را به یک پورت بدهیم و با یک مبدل دیجیتال به آنالوگ مقاومتی ساده و با توجه به بیت ریت ضبط شده صدا را بر روی یک بلندگو آشکار نماییم.بر همین اساس باید صدا را به صورت 8 بیتی و در حالت مونو و با بیت ریت 22 کیلو (۲۲٫۰۵۰KHz- 8bit- Mono) ذخیره نماییم.

 مدار Wave Player با استفاده از میکرو AVR با بسکام:

این پروژه قادر به پخش فایل های صوتی Wave با فرمت ۲۲٫۰۵۰KHz- 8bit- Mono از روی مموری کارت های SD/MMC می باشد .این پروژه از هر دونوع FAT16 و FAT32 پشتیبانی می کند و طرز کار آن بدین صور است که در ابتدا باید مموری را format نموده ، سپس یک فایل Notepad به نام دلخواه (انگلیسی) در کامپیوتر ایجاد کرده و داخل آن عبارت F1 را تایپ نمایید . ( توجه داشته باشید که F حرف بزرگ باشد )

مدار Wave Player با استفاده از میکرو AVR با کدویژن:

این پروژه که با کدویژن و atmega32 درست شده نسبت به پروژه ی بسکام قویتر ااست و فایل ها Wav روی مموری کارت را به صورت استریو می خونه و محدودیت های فایل های Wav قابل پخش به صورت : فایل از نوع PCM باشد 8 بیت باشد حد اکثر بیت ریت آن 44.100 کیلو هرتز باشه فایل PCB اون با پروتیوس کشیده شده و از تقویت کننده LM386 برای خروجی صدا استفاده شده.

مدار سوم با بسکام:

اساس کار مدار بدین صورت است که ابتدا باید اهنگ مورد نظر را به فرمت wav تبدیل کنید . البته تنظیمات دیگری برای تهیه این فرمت وجود دارد که آموزش آن به صورت کامل در PDF داخل فایل دانلود قرار داده شده است . بعد از این که اهنگ مورد نظرتان را تبدیل کردید آن را بر روی کارت MMC کپی کرده و طبق نقشه ای که در فایل دانلود به صورت JPG قرار داده شده است مدار را طراحی کنید. توجه داشته باشید که این پروژه به صورت فایل Proteus نیز آماده شده است و شما می توانید نحوه کار این مدار را مشاهده کنید. ( توصیه می کنم برای شنیدن صدای پروژه صدای Speker های خود را زیاد کنید ) اما برای ساخت پروژه به صورت سخت افزاری آن را از روی فایل JPG طراحی کنید به دلیل اینکه بعضی از قسمت ها مانند منبع تغذیه MMC و Micro AVR در فایل Proteus کشیده نشده است. نحوه عملکرد مدار بدین صورت است که در ابتدا طبق دیتا شیت MMC چند کد هگز برای دادن آدرس و راه اندازی MMC به کارت ارسال می شود و در مرحله بعد اطلاعات خوانده شده از کارت را به PWM میکرو فرستاده و از این طریق صدا را در خروجی دریافت می کنیم . در مدار 3 کلید وجود دارد که عملکرد یکی از آن ها برای stop / start کردن موزیک شماست و کلید های بعدی برای جلو و عقب بردن آهنگ شماست. تغذیه خود میکرو 5 ولت است و تغدیه کارت حافظه MMC باید 3.3 ولت باشد که از یک رگولاتور 3.3 به شماره LF33CV استفاده شده است و برای هم سطح کردن ولتاژ پایه های متصل به میکرو و کارت حافظه از تقسیم مقاومتی استفاده است. اما در مورد اتصال کارت MMC به میکرو می توانید از سوکت های رایج کارت MMC استفاده کنید. در شکل زیر شماره پایه های کارت برای شما نمایش داده شده است . در این مدار از کارت های حافظه MMC با ظرفیت 1 گیگابایت استفاده شده است اما اگر خواستید از کارت با حافظه کمتر استفاده کنید باید عدد خط 98 برنامه را تغییر بدهید .در حال حاضر به صورت Test = 512 * 7800 است که به نسبت تغییر حافظه کارت مورد استفاده عدد 7800 را باید تغییر داد. در مدار به PINB.4 میکرو یک LED متصل شده است که با خواندن هر خانه از سکتورهای MMC حالت آن تغییر می کند و از روشن به خاموش و بالعکس تغییر وضعیت می دهد و در ظاهر در هنگام پخش موزیک خیلی سریع چشمک می زند و چشمک زدن ممکن است به خوبی دیده نشود. در این مدار از کریستال خارجی 11.592 مگا هرتز استفاده شده که لازم است در فیوز بیت های میکرو ، کریستال را بر روی کریستال خارجی فرکانس بالا تعیین کنید و در ضمن با این کار در دفعات بعدی اگر خواستید میکرو را پروگرم کنید باید کریستال به آن متصل باشد تا قابل شناسایی باشد . خروجی صدا توسط یک طبقه تقویت کننده به شماره آی سی LM386 به Buzzer فرستاده می شود و در ضمن صدای خروجی میکرو به صورت تک کاناله ( مونو ) می باشد. توجه کنید که برای تست مدار در فایل Proteus یک فایل متنی به نام cardimage_test.mmc قرار داده شده است و آن را در MMC داخل Proteus اضافه کرده ایم.

 


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


دانلود پروژه Wave Player با استفاده از میکرو AVR به دو زبان بسکام و کدویژن

دانلودمقاله آموزش میکرو کنترلر 8051

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

 

 


قبل از همه چیز چرا 8051 ؟
میکرولنترلر 8051 پایه و اساسی است برای یادگیری دیگر میکروکنترلر ها دستورات اسمبلی این میکرو نسبت به AVR خیلی کمتر هست و دارای امکانات کمتری نسبت به دیگر میکرو ها است به همین دلیل یادگیری و فهم آن خیلی راحت و آسان می باشد که برای شروع ابتدا باید مفاهیم منطق و دیجیتال را خوب فهمیده باشید و بعد از آن باید سخت افرار 8051 و RAM و ROM داخلی آن را درک کرده باشید تا بتوانید یک برنامه کاربردی بنویسید تا یک پروسه را کنترل کند. خیلی ها برای یادگیری میگن که ما که می خواهیم برنامه نویسی میکرو را یاد بگیرم پس بهتر بالاترین میکرو یعنی AVR یا PIC یاد بگیریم در صورتی که به نظر من کاملا اشتاه بوده و کار غلطی است که اگه بخواهید تا آخر ادامه دهید کاری طاقت فرسا خواهد بود. مثل این خواهد بود که سقف طبقه اول یک ساختمان را درست نکرده باشیم و بخواهیم طبقه دوم را درست کنیم. در این وبلاگ من تا بتوانم به زبان ساده و روان مطالب را بیان خواهم کرد که البته اگه یکم علاقه و پشتکار داشته باشد مطمئن باشید به میکرو مسلط خواهید شد و می توانید آن را به راحتی برنامه ریزی کنید. قیمت این میکرو خیلی ارزان می باشد در حدود 1000 تومان و حافظه ROM آن قابل پاک کردن و استفاده مجدد می باشد پس شما به راحتی می توانید در خانه یا محل کار برای راحتی خود و افراد خانواده چیزهایی با آن بسازید که آدم باورش نشه که اینو خودش ساخته و طراحی کرده.

 


تشریح پایه های 8051 و RAM و ROM داخلی آن
8051 دارای 4 پورت ورودی یا خروجی می باشد یعنی اینکه هر کدام از این پورت ها را می توان در یک لحظه به عنوان ورودی استفاده کرد و همان پورت را دوباره در یک لحظه دیگر به عنوان خروجی از آن استفاده کرد. منظور از پورت چیست؟ پورت در میکرو یعنی 8 عدد پین یا 8 خط دیتا یا ذر اصطلاح 8بیتی، که 8051 دارای 4 پورت 8 بتی یعنی 32 پایه می باشد.
میکرو کنترلر AT89C51 دارای 128 بایت RAM و 4KB حافظه برنامه ROM می باشد. و AT89C52 دارای 256 بایت RAM و 8KB حافظه برنامه ROM می باشد. و AT89C55 دارای 256 بایت RAM و 20KB حافظه برنامه ROM می باشد. که بستگی به حجم برنامه ما دارد که از کدام میکرو استفاده کنیم.
کاربرد RAM چست؟ اصلا به چه دردی می خوره؟
RAM یعنی random access memory حافظه با دستیابی تصادفی. از این حافظه برای ذخیره اطلاعات موقت استفاده می شود یعنی اینکه تا زمانی که تغذیه میکرو وصل باشد این اطلاعات از بین نمی روند و با قطع کردن تغذیه این اطلاعات از بین می روند. ما در میکرو 8 ثبات 8 بتی برای ذخیره کردن داده ها داریم در بعضی از مواقع پیش می آید که این 8 ثبات در کل برنامه استفاده شوند و ما به یک ثبات 8 بیتی برای ذخیره سازی داده ها داریم مثلا یک شمارنده طراحی کردیم و همه ثبات ها هم استفاده شده و ما مثلا به دو ثبات احتیاج داریم که می توانیم از هر کدام از خانه های RAM استفاده کنیم. منظور از اطلاعات همان داده های 8 بیتی می باشند یعنی همون 0 یا 1 ها که به 8 تا از آنها یک بایت یا یک داده 8 بیتی می گویند.
حال به تقسیم بندی RAM توجه کنید. برای برنامه نویسی خیلی مهم است که ما از چه خانه های RAM مجاز هستیم استفاده کنیم آیا می توانیم در فلان خانه RAM داده را به صورت بیتی دستکاری کنیم یا داده را 8 بیتی دستکاری کنیم. اصلا در چه محدوده ای از RAM قادر هستیم داده ذخیره کنیم یا بانک های ثباتی در کجای RAM واقع شده اند و دیگر ثبات ها... به جدول زیر که مربوط به RAM خوب توجه کنید:
عملکرد ثبات خانه های 8 بتی RAM آدرس
FF
ثبات B B F0 F1 F2 F3 F4 F5 F6 F7 F0
ثبات A یا انباره ACC E0 E1 E2 E3 E4 E5 E6 E7 E0
کلمه وضعیت PSW D0 D1 D2 D3 D4 D5 D6 D7 D0
IP B8 B9 BA BB BC -- -- -- B8
پورت 3 P3 B0 B1 B2 B3 B4 B5 B6 B7 B0
کنترل وقفه ها IE A8 A9 AA AB AC -- -- AF A8
پورت 2 P2 A0 A1 A2 A3 A4 A5 A6 A7 A0
ارتباط سریال SBUF قابل آدرس دهی نیست 99
SCON 98 99 9A 9B 9C 9D 9E 9F 98
پورت 1 P1 90 91 92 93 94 95 96 97 90
بایت سنگین تایمر 1 TH1 قابل آدرس دهی نیست 8D
بایت سنگین تایمر 0 TH0 قابل آدرس دهی نیست 8C
بایت سبک تایمر 1 TL1 قابل آدرس دهی نیست 8B
بایت سبک تایمر 0 TL0 قابل آدرس دهی نیست 8A
مد تایمر TMOD قابل آدرس دهی نیست 89
مد شمارنده TCON 88 89 8A 8B 8C 8D 8E 8F 88
PCON قابل آدرس دهی نیست 87
بایت سنگین ثبات DPTR DPH قابل آدرس دهی نیست 83
بایت سبک ثبات DPTR DPL قابل آدرس دهی نیست 82
اشاره گر پشته SP قابل آدرس دهی نیست 81
پورت 0 P0 80 81 82 83 84 85 86 87 80
فقط بایتی 80 بایت برای خواندن و نوشتن موقت 30تا7F
بیتی و بایتی 16 بایت برای خواندن و نوشتن موقت 20تا2F

 

بانک های ثباتی شامل R0-R7 R0-R7 بانک 3 18تا1F
R0-R7 بانک 2 10تا17
R0-R7 بانک 1 08تا0F
R0-R7 بانک 0 00تا07
MGH MGH MGH MGH

 

8051 در کل 128 بایت RAM دارد که به صورت جدول بالا تقسیم بندی می شود:
1) 32 بایت از مکان های 00 تا 1F برای بانک های ثباتی و پشته کنار گذاشته شده.
2) 16 بایت از 20 تا2F برای خواندن و نوشتن آدرس پذیر بیتی کنار گذاشته شده.
3) 80 بایت از مکان های 30 تا7F برای خواندن و نوشتن بایتی و یا آنچه که عموما داده موقت گفته می شو به کار می رود.
نکته: جلوی خانه هایی که نوشته شده قابل آدرس دهی نیست یعنی اینکه نمی توان با آدرس هگز آن از این ثبات استفاده کرده به عنوان مثال برای SBUF در برنامه نویسی حتما باید خود SBUF را نوشت یعنی از آدرس هگز آن نمی توان استفاده کرد. ولی در بقه موارد مجاز هستیم. با یک مثال این قضیه را روشن می کنیم:
MOV A,#60H یعنی عدد 60 در مبنای هگز را در انباره کپی کن. حال این دستور را این طوری هم می توان نوشت یعنی از آدرس A استفاده کرد. MOV E0,#60H
در RAM /8051 ما چهار بانک ثباتی داریم که هر بانک داری 8 بایت(R0تاR7) 8بیتی می باشد یعنی:
بانک صفر
R7 D0 D1 D2 D3 D4 D5 D6 D7
R6 D0 D1 D2 D3 D4 D5 D6 D7
R5 D0 D1 D2 D3 D4 D5 D6 D7
R4 D0 D1 D2 D3 D4 D5 D6 D7
R3 D0 D1 D2 D3 D4 D5 D6 D7
R2 D0 D1 D2 D3 D4 D5 D6 D7
R1 D0 D1 D2 D3 D4 D5 D6 D7
R0 D0 D1 D2 D3 D4 D5 D6 D7

 

بقیه بانک ها نیز مانند جدول بانک صفر می باشد از این ثبات ها در برنامه نویسی خیلی زیاد استفاده می شودند.نحوی انتخاب بانک یا تغییر دادن آن به صورت زیر می باشد:
8051 هنگامی روشن می شود بانک صفر به صورت پیش فرض برای بانک ثباتی خود انتخاب می کند که برای تغییر دادن آن می توانیم به صورت زیر عمل کنیم.
RS0(PSW.3) RS1(PSW.4)
0 0 بانک صفر
1 0 بانک یک
0 1 بانک دو
1 1 بانک سه
به کمک دستورات بیتی می توان این بانک را تغییر داد به مثال زیر توجه کنید می خواهیم بانک 3 را به عنوان بانک ثباتی میکرو تغییر دهیم؟
SETB PSW.4
SETB PSW.3
می خواهیم بانک دو را انتخاب کنیم؟
SETB PSW.4
CLR PSW.3
پشته:
هنگامی که 8051 روشن می شود اشارگر پشته به صورت پیش فرض عدد 07 را در خود دارد که نهایت با عث انتخاب بانک 1 برای پشته خود می شود. SP=07H
برای تغییر پشته به مکان دیگری ازRAM یا بانک دیگری می توان به کمک دستور زیر پشته را تغییر داد: MOV SP,#XX که XX آدرس آن مکان از RAM می باشد.
حال کاربرد پشته چیست؟ پشته کاربرد زیادی دارد شاید ما زیاد با آن سرو کار نداشته باشیم ولی CPU با آن خیلی کار دارد به عنوان مثال برای اجرای یک زیر برنامه(برنامه فرعی) مثلا CALL LABEL پردازنده آدرس این مکانی را که در آن به این دستور برخورد کرده، را در پشته خود ذخیره می کند و بعد از اجرای پشته به کمک این آدرس بر می گردد تا ادامه برنامه اصلی را انجام دهد.
برای درج داده رد پشته از دستور PUSH استفاده می کنیم و برای بازیافت داده از پشته از دستور POP استفاده می کنیم. با هر بار درج در پشته اشارگز پشته یک واحد به آن اضافه می شود. و با هر بار بازیافت از پشته اشارگر پشته یک واحد از آن کم می شود.
ROM چیست؟
این حافظه از دست ما خارج است یعنی اینکه فقط توسط کامپیوتر می توان برنامه اصلی را توی این حافظه کپی کرد و ما بعدا توسط خود میکرو نمی توانیم محتوای آن را تغییر دهیم بلکه فقط می توانیم اطلاعات را این حافظه به حافظه RAM انتقال داده و بعد از پردازش می توان آنها را به خروجی فرستاد.
پایه RST(9) ریست
با فعال شدن این پایه یعنی یک شدن به مدت حداقل 2 سیکل ماشین میکرو ریست شده و به خانه 0000H پرش کرده و ار آنجا شروع به خواندن برنامه می کند.
پایه EA
اگر این پایه را یک کنیم میکرو برنامه را از ROM داخلی خودش شروع به خواندن می کند و اگر این پایه را صفر کنیم میکرو از ROM داخلی خودش هیچ اطلاعاتی نمی خواند و با برنامه ریزی که شده از ROM بیرونی شروع به خواندن اطلاعات می کند.
پایه PSE
این پایه برای زمانی است که بخواهیم از RAM یا ROM بیرونی استفاده کنیم که بسته به شرایط یا صف می شود یا یک.
پایه ALE
اگر از RAM یا ROM بیرونی استفاده کنیم این پایه پورت صفر را به عنوان خطوط آدرس معرفی می کند.
دستور EQU و DB
البته این دو دستور جزء قالب های دستوری 8051 نیست یعنی اصلا میکرو چنین دستوری را ندارد و اجرا هم نمی کند. این دو دستور را فقط کامپایلر ها می شناسد که به رهنمون هم معرف هستند اینها برای راحتی کار و برنامه نویسی هستند.
EQU به کمک این دستور می توان یه متغیر تهریف کنیم مثلا ما در یک پروژه داریم که در آن یک کلید به نام OK وجود دارد ما می خواهیم OK را روی بیت 3 از پورت 2 قرار دهیم یعنی اینکه P2.3=OK برای راحتی کار در طول برنامه ممکن از این کلید بخواهیم زیاد استفاده کنیم به همین دلیل اول برنامه این بیت را به متغییر OK نسبت می دهیم به روش زیر:
OK EQU P2.3
…………………….
JB OK,LOOP
برنامه اینطور می باشد که P2.3 به OK اختصاص داده شده و در برنامه اصلی ما می خواهیم که هر گاه این بیت یک شد به آدرس LOOP پرش کند. پس ما می نویسیم اگر OK یک شده به LOOP پرش کن.
DB اگه با LCD سرو کار داشته باشیم برای نمایش پیغام ها روی LCD باید کد اسکی آنها رو نوشت که خیلی کار سخت و وقت گیری به همین دلیل در برنامه پیغام خود را به صورت زیر می نویسیم:
ORG 600H
DB 'WWW.MC8051.BLOGFA.COM'
ابتدا باید مکان این پیغام را مشخص کنیم مثلا من در خانه 600 ROM این عبارت را نوشته توجه شود که هر کاراکتر 8 بیت دارد و هر یک از آنها در خانه 600و601و602و603 تا.... قرار می گیرد. قالب دستور به این صورت می باشد DB ' ' متن یا پیغام را باید حتما بین این دو علامت نوشت تا کامپایلر متوجه شود که متن ما همینی هست که توی این دو تا علامت قرار دارد و بعد از این علامت جزء پیغام ما نیست.
دستور MOV
این دستور پر کاربرد ترین دستور در میکرو می باشد معنی این دستور هم کپی کردن هست و انتقال دادن به مثال های زیر توجه کنید!
MOV A,#80H عدد 80 را در انباره کپی کن
MOV R1,#50H عدد50 را در ثبات R1 کپی کن
MOV P1,A محتوای انباره روی پورت 1 انتقال بده
مثال : برنامه یک چشمک زن بنویسید با دو تا LED که روی بیت های P1.1 , P1.2 وصل شده اند؟
ابتدا بیتهای پورت یک را به صورت زیر می نویسیم و کد هگز آن را بدست می آوریم توجه شود که باید حتما بعد از کد H بنویسیم.
P1 D0 D1 D2 D3 D4 D5 D6 D7
02 0 1 0 0 0 0 0 0
04 0 0 1 0 0 0 0 0

 

عدد 2 را روی پورت 1 انتقال بدهSTART: MOV P1,#02H
یک تاخیر ایجاد کن ACALL DELAY
عدد 4 را روی پورت 1 انتقال بده MOV P1,#04H
یک تاخیر ایجاد کن ACALL DELAY
به اول برنامه بر گردد و مراحل را تکرار کن SJMP START
یک زیر برنامه تاخیریDELAY:
نکته بجای اینکه کد هگز را بدست‌ بیاوریم می توانیم از قاعد زیر استفاده کنیم فقط توجه شود که باید از حرف B حتما استفاده کنیم.MGH
MOV P1,#00000010B , MOV P1,#00000100B
انواع مدهای آدرس دهی
الف) آدرس دهی ثباتی
این روش آدرس دهی به صورت ثباتی انجام می گیرد یعنی اینکه ثبات با ثبات کپی می شوند.
محتوای یکی از ثبات های 1 تا 7 را در انباره کپی می کندMOV A,R1…R7
محتوای R3 در خانه 30 از RAM کپی می شود MOV 30H,R3
ب) آدرس دهی مستقیم
یعنی اینکه ثبات با ثبات یا خانه ای از RAM با خانه ای دیگر به طور مستقیم و بدون واسطه انجام می گیرد.
محتوای R5 در R4 کپی می شودMOV R4,R5
محتوای ثبات B در انباره کپی می شودMOV A,B
محتوای خانه 30 از RAM در ثبات R3 کپی می شود MOV R3,30H
محتوای خانه 30 از RAM در ثبات B کپی می شود MOV B,30H
ج) آدرس دهی غیره مستقیم
همانطور از اسمش پیداست به صورت غیر مستقیم دیتایی از یک نقطه به نقطه دیگر کپی می شود.
محتوای خانه ای از RAM که آدرس آن در ثبات R0 می باشد را در انباره کپی کن MOV A,@R0
محتوای خانه ای از RAM که آدرس آن در ثبات R1 می باشد را در ثبات B کپی کن MOV B,@R1
محتوای خانه ای از RAM که آدرس آن در ثبات R0 می باشد را در خانه 40Hاز RAM کپی کن MOV 40H,@R0
محتوای خانه ای از RAM که آدرس آن در ثبات R1 می باشد را در TL0 کپی کن MOV TL0,@R1
نکته: برای آدرس دهی غیر مستقیم تنها مجاز هستیم از R0 و R1 استفاده کنیم.

 

 

فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد

تعداد صفحات این مقاله  66  صفحه

پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید


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


دانلودمقاله آموزش میکرو کنترلر 8051