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

Word 186 KB 6079 31
مشخص نشده مشخص نشده الکترونیک - برق - مخابرات
قیمت قدیم:۱۴,۸۵۰ تومان
قیمت با تخفیف: ۱۰,۰۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • چکیده :

    سخت افزار این پروژه به طور کلی از یک میکروکنترلر Atmega16 از شرکت ATMEL  و یک LCD 4*20  جهت نمایش عملکرد و 4 رله در خروجی و چند قطعه دیگر جهت کارهای جانبی و تنظیمات سخت افزاری تشکیل شده است .

    این پروژه جهت کنترل 4 موتور مجزا با تنظیمات مجزا می باشد که توسط برنامۀ Bascom  و به زبان Basic  طراحی شده است .

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

    نام این پروژه HMI است که مخفف سه کلمۀ

    Human  Machine  Interface

    به معنی ماشین واسط انسانی است .

     

     

     

     

    مقدمه :

    امروزه با توجه به پیشرفت علم الکترونیک از میکروکنترلرها  استفاده بیشتری می شود که این میکروکنترلرها دو مزیت بزرگ دارند : 1 سادگی مدار از نظر سخت افزاری 2 ارزان تمام شدن مدار .

    میکروکنترلرها انواع مختلف و با زبان های برنامه نویسی مختلف از جمله Basic و C و...

    می باشند که هر یک مزیتها و معایبی را دارند .

    در این پروژه که جهت کنترل زمان روشن و خاموش شدن 4 موتور در خروجی یا به طور کلی 4 خروجی از میکروکنترلر AVR از نوع ATmega16 شرکت ATmel و توسط زبان Basic و در محیط Bascom طراحی شده است .

     

    مختصری راجع به AVR

    زبانهای سطح بالا یا همان (HIGH LEVEL LANGUAGES) HLL به سرعت در حال تبدیل شدن به زبان برنامه نویسی استاندارد برای میکرو کنترلرها (MCU) حتی برای میکروهای 8 بیتی کوچک هستند . زبان برنامه نویسی BASIC  و C  بیشترین استفاده را در برنامه نویسی میکروها دارند ولی در اکثر کاربردها کدهای بیشتری را نسبت به زبان برنامه نویسی اسمبلی تولید می کنند . ATMEL ایجاد تحولی در معماری ، جهت کاهش کد به مقدار مینیمم را درک کرد که نتیجه این تحول میکرو کنترلرهای AVR هستند که علاوه بر کاهش و بهینه سازی مقدار کدها به طور واقع عملیات را تنها در یک کلاک سیکل توسط معماری ( REDUCED RISC INSTRUCTION SET COMPUTER)   انجام می دهند و از 32 ریجیستر همه منظوره (ACCUMULATORS) استفاده می کنند که باعث شده 4  تا 12 بار سریعتر از میکروهای موزد استفاده کنونی باشند .

    تکنولوژی حافظه کم مصرف غیر فرّار شرکت ATMEL برای برنامه ریزی AVR ها مورد استفاده قرار گرفته است در نتیجه حافظه های FLASH و EEPROM در داخل مدار قابل برنامه ریزی (ISP) هستند . میکروکنترلرهای اولیه AVR  دارای 1 ، 2 ، 8 کییوبایت حافظه FLASH و به صورت کلمات 16 بیتی سازماندهی شده بودند .

    AVR ها به عنوان میکروهای RISC  با دستورات فراوان طراحی شده اند که باعث میشود حجم کد تولید شده کم و سرعت بالاتری به دست آید .

     

    عملیات تک سیکل :

    با انجام تک سیکل دستورات ، کلاک اسیلاتور با کلاک داخلط سیستم یکی می شود . هیچ تقسیم کننده ای در داخل AVR قرار ندارد که ایجاد اختلاف فاز کلاک کند .  اکثر میکروها کلاک اسیلاتور به سیستم را با نسبت 1:4 یا  1:12 تقسیم می کنند که

    خود باعث کاهش سرعت می شود . بنابراین AVR ها 4  تا 12 بار سریعتر و مصرف

    آنها نیز 4-12 بار نسبت به میکروکنترلرهای مصرفی کنونی کمتر است زیرا در تکنولژی CMOS استفاده شده در میکروهای AVR ، مصرف توان سطح منطقی متناسب با فرکانس است .

    نمودار زیر افزایش (MILLION INSSTRUCTION PER SECONDS) MIPS را به علت انجام عملیات تک سیکل AVR (نسبت 1:1 ) در مقایسه با نسبتهای 1:4 و 1:12 دی دیگر میکروها را نشان می دهد .

    نمودار مقایسه افزایش

    MIPS/POWER Consumption در AVR با دیگر میکرو کنترلرها .

     

     

     

    طراحی برای زبان های BASIC و C

    زبان های BASIC و C بیشترین استفاده را در دنیای امروز بعنوان زبان های HLL دارند. تا امروزه معماری بیشتر میکروها برای زبان اسمبلی طراحی شده و کمتر از زبانهای HLL حمایت کرده اند .

    هدف ATMEL طراحی معماری بود که هم برای زبان اسمبلی و هم زبان های HLL مفید باشد . به طور مثال در زبانهای C و BASIC  می توان یک متغییر محلی به جای متغییر سراسری در داخل زیربرنامه تعریف کرد ، در این صورت فقط در زمان اجرا زیر برنامه مکانی از حافظه RAM برای متغییر اشغال می شود در صورتی که اگر متغییری به عنوان سراسری تعریف گردد در تمام وقت مکانی از حافظه FLASH ROM را اشغال کرده است .

    برای دسترسی سریعتر به متغییرهای محلی و کاهش کد ، نیاز به افزایش رجیسترهای همه منظوره است . AVR ها دارای 32 رجیستر هستند که مستقیماً به

    ( UNIT ARITHMETIC) LOGIC ALU) متصل شده اند ، و تنها در یک کلاک سیکل به این واحد دسترسی پیدا می کنند .سه جفت از این رجیسترها می توانند به عنوان رجیسترهای 16 بیتی استفاده شوند .

     

     

    کلیات پروژه و نحوه عملکرد :

    این پروژه جهت زمان بندی مجزای 4 موتور (یا هر خروجی دیگر )استفاده می شود که با تنظیم هر موتور می توان به طور مجزا از آن استفاده کرد و تنظیمات هر موتور با موتورهای دیگر کاملاً مجزا است .

    در این پرژه پس از Initialize شدن و معرفی پرژه به صفحۀ اصلی می رسیم که در قسمت بالای صفحه ، ساعت آن قرار دارد که در هنگام روشن شدن در صورت تنظیم نکردن از ساعت 12:00:00 شروع به شمارش می کند .

    در قسمت زیرین نشانگر ساعت ، نشانگر وضعیت 4 موتور قرار دارد که در صورتی که موتوری روشن باشد در جلوی آن کلمه ی ON و در صورتی که خاموش باشد کلمۀ OFF درج شده است .

    در پایین صفحه LCD 4 گزینۀ TAB – UP – MENU – SAVE  وجود دارد .

    برای تنظیمات موتور و ساعت توسط گزینۀ TAB به صفحۀ بعد می رویم در صفحۀ بعد دو گزینه با نامهای Mode 1 و Mode 2 داریم که Mode 1 برای تنظیمات ساعت و Mode 2  برای تنظیمات 4 موتور است و در صورتی که سوئیچ زیر هر گزینه را بفشاریم به آن MODE رفته و شروع به تنظیمات می کنیم به شرح زیر :

    اگر Mode 1 برویم وارد مُد ساعت شده ایم و با کلید TAB روی هر قسمت از ساعت و دقیقه و ثانیه می رویم پس از این کار با گزینه Up شروع به تنظیم هر قسمت می کنیم و

    با گزینۀ TAB به قسمت بعدی می رویم و در صورتی که بخواهیم تنظیمات ثبت شود توسط گزینۀ Save آن را ثبت می کنیم و توسط گزینۀ Esc به صفحۀ اصلی بر              میگردیم . حال اگر به MODE 2 برویم وارد مُد تنظیمات 4 موتور رفته ایم و با کلید TAB از 4 موتور یکی را انتخاب کرده و توسط گزینۀ OK وارد تنظیمات آن موتور میشود که شامل دو گزینۀ Start و Time است که گزینۀ  Start زمان روشن شدن و گزینۀ  Time زمان خاموش شدن را مشخص می کند و برای تنظیمات آن نیز مانند تنظیمات ساعت توسط دو گزینۀ TAB و Up تنظیم می کنیم و توسط گزینۀ  Save آن را قبول کرده و تنظیم می کنیم ، سپس توسط گزینۀ Esc از آن صفحه خارج و به صفحۀ قبل بر می گردیم و این عمل برای تنظیم 4 موتور صورت می گیرد .

    در پایان جا دارد این نکته نیز گفته شود که تنظیمات ثبت شده برای هر 4 موتور در EEPROM ثبت می شود و در صورتی که تغذیۀ آن قطع شود و برای بار دوم روشن شود تنها باید ساعت تنظیم شود و تنظیمات موتور دقیقاً مانند قبل عمل خواهند کرد .

     

     

     

     

     

    توضیح در مورد سخت افزار

    میکروکنترلرها AVR این پروژه از نوع Atmega16 انتخاب شده است که دارای فضای حافظۀ بیشتر و EEPROM می باشد .نمایشگر این پروژه از نوع LCD 4*20  با شماره

     TS-2040-1 می باشد که دیتا شیت آن در فصل پایانی ارائه شده است .

    در قسمت تغذیه از چهار دیود IN4007 استفاده شده و برای صافی آن از خازن 1000Uf و خازن عدسی 100nf استفاده شده است و از یک رکولاتور 7805 برای تثبیت ولتاژ 5 ولت در خروجی قرار گرفته است .

    4 عدد رله نیز برای کنترل ، در خروجی قرار دارند . LED و یک مقاومت 470 اُهم برای قسمت نشان دهنده Power قرار دارد .

    برای کنترل و مقداردهی از 4 میکروسوئیچ به همراه 4 مقاومت 10 کیلو اُهم که      پزیری را صفر می کند و در عمل به این مقاومتها ، مقاومت های Pall down   گویند .

    یک مقاومت برای تنظیم کنتر است ، LCD بین پایۀ 3  و زمین قرار دارد و یک مقاومت هم برای محدود کردن جریان سوئیچ رله ها است .

     

     

     

     

    خصوصیات ATmega16 , ATmega16 L

    از معماری AVR RISC استفاده می کند .

    کارایی بالا و توان مصرفی کم .

    دارای 131 دستورالعمل با کارایی بالا که اکثراً تنها در یک کلاک سیکل اجرا میشوند .

    32*8 رجیستر کاربردی .

    سرعتی تا 16 MIPS در فرکانس 16 MHZ

    حافظه ، برنامه و دادۀ غیر فرّار

    16K بایت حافظه FLASH داخلی قابل برنامه ریزی

  • فهرست:

    ندارد.


    منبع:

    ندارد.
     

فصل 1 - توصيف کامل پروژه ضرورت ها و نياز ها : در بسياري از مدارات ديجيتالي ( ميکروکنترلي ) که با برق و باطري کار مي کنند با دو مشکل مواجه مي باشيم : مشکل اول مربوط به عملکرد است. يعني عملکرد نمايش LCD با ولتاژ 5 ولت است در حالي که اي

میکروکنترلر چیست: میکروکنترلر رو درواقع می توان یه کامپیوتر کوچولو در قالب یه چیپ برای کنترل وسایل الکترونیکی (در اینجا ربات) تلقی کرد. تفاوت میکروکنترلر با میکروپروسسور در اینه که میکروکنترلر دارای یک CPU ٫مقدار محدودی RAM ٬ ROM ٬ پورت های I/O و تایمر در درون خود می باشد در صورتی که میکروپروسسور فقط یه CPU هست و شما باید RAM, ROM ,... رو به صورت اجزای جانبی به اون متصل کنید ...

در اين پروژه سعي بر اين است که علاوه بر آشنايي با ميکروکنترلر AVRو محيط نرم افزاري (labview) سخت افزار،به گونه اي طراحي شود که با دريافت سيگنال آنالوگ ورودي (صوت) از ميکروفن ، از طريق واحدADC ميکرو اين سيگنال به ديجيتال تبديل شود و با توجه به برنامه

آموزش ساخت ربات (ميکروکنترلر) ميکروکنترلر چيست: ميکروکنترلر رو درواقع مي توان يه کامپيوتر کوچولو در قالب يه چيپ براي کنترل وسايل الکترونيکي (در اينجا ربات) تلقي کرد. تفاوت ميکروکنترلر با ميکروپروسسور در اينه که ميکروکنترلر داراي يک CPU ?مقدار محدود

مشخصات مدار مشخصات اين دماسنج کنترلي بصورت زير است 1- قابليت اندازه گيري دما تا 100 درجه سانتي گراد 2- قابليت تنظيم هشدار دهنده ، دماي بيش از حد 3- قابل استفاده در دو حالت winner , summer 4-داراي نمايشگر LCD اين مدار شامل يک آي سي از خان

مقدمه : میکروکنترلر چیست ؟ میکروکنترلر در واقع یک کامپیوتر تک تراشه ای ارزاتقیمت می­باشد. کامپیوتر تک تراشه ای بدین معنی است که کل سیستم کامپیوتر در داخل تراشه مدارمجتمع جای داده شده است.میکروکنترلری که برروی تراشه سیلیکونی ساخته میشود دارای خصوصیاتی مشابه خصوصیات کامپیوترهای شخصی استاندارد است. نخستین ویژگی میکرولنترلر دارای یک CPU (واحد پردازشگر مرکزی) حافظه RAM3 و حافظه ROM4 ...

حافظه هاي ATMagUlb, AVR اين بخش تفاوت ميان حافظه هاي دو، ATmegulb را توصيف مي کند در ساختار AVR دو فضاي حافظه اي، فضاي حافظه اي برنامه توليست وفضاي حافظه اي اوليه وجود دارد در مجموع ATMega16 يکEEPROM براي نگهداري اطلاعات حافظه اي دارد همه

مقدمه فصل يک در موردانواع ميکروکنترلر هاي MEGAAVR است که سعي شده است به طور کلي توضيح داده شود . در فصل دوم شاهد توضيحاتي در مورد عملکرد پروژه ساخت (مدار الکترونيکي ، قطعات تشکيل دهنده ، برنامه مورد استفاده وتوضيحات کامل کننده است . درف

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

پیشگفتار در اوایل دهه 60 میلادی ایالات متحده در آستانه شکل گیری تکنولوژی نوینی در مهندسی برق بود. ترانزیستور که کمی پس از پایان جنگ جهانی دوم توسط سه دانشمند در آزمایشگاههای کمپانی بل ابداع شده بود، کم کم جایگزین رقیبش لامپ خلا می شد. در سال 1968 رابرت نویس و گوردون مور، دو نفر از پایه گذاران اصلی کمپانی فیرچایلد شرکت جدیدی موسوم به اینتل[1] تاسیس نمو دند. در سال 1969 یک شرکت ...

ثبت سفارش
تعداد
عنوان محصول