دانلود انواع فایل

مقاله تحقیق پروژه دانش آموزی و دانشجویی

دانلود انواع فایل

مقاله تحقیق پروژه دانش آموزی و دانشجویی

بررسی ساخت یک قفل الکترونیکی با استفاده از میکرو کنترلر AVR (ATMEGA8)

بررسی ساخت یک قفل الکترونیکی با استفاده از میکرو کنترلر AVR (ATMEGA8)

چکیده :

در این پروژه پیرامون طراحی نرم افزار ساخت یک قفل الکترونیکی با استفاده از میکرو کنترلر AVR(ATMEGA8) مطالبی چند به میان آمده است این قفل توانایی این را دارد که توسط سه نفر و با سه رمز رقمی متفاوت مورد استفاده قرار گیرد .

میکرو AVR رمز را از یک صفحه کلید ماتریسی دریافت می کند و پس از نمایش برروی صفحه نمایشگر LCD پس از مقایسه با رمز موجود در حافظه در صورت صحیح بودن رله ای را برای یک ثانیه فعال می کند و قفل باز می گردد هر یک از این کاربرها به راحتی

می توانند رمز مورد نظر خود را تغییر دهند و رمز دیگری را جایگزین آن کنند .

یک رمز 5 رقمی نیز به عنوان رمز SUPERVISER تعریف شده است که در صورتی که یکی از کاربرها رمز خود را فراموش کرد می تواند با وارد کردن آن سه رمز دیگر را صفر کند و کاربرها می توانند با مراجعه دوباره رمز مورد نظر خود را وارد کنند و پیغام های میکرو نیز در هر مرحله با توجه به کلید فشار داده شده بر روی صفحه نمایشگر LCD نمایش داده

می شود .

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

مقدمه :

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

زبانهای سطح بالا یا همان HLL (HIGH Level Language) به سرعت در حال تبدیل شدن به زبان برنامه نویسی استاندارد برای میکرو کنترلرها (MCU) حتی برای میکروهای 8 بیتی کوچک هستند زبان برنامه نویسی C و BASIC بیشترین استفاده را در برنامه نویسی میکروها دارند ولی در اکثر کاربردها کدهای بیشتری را نسبت به زبان برنامه نویسی اسمبلی تولید می کنند .

ATMEL ایجاد تحولی در معماری جهت کاهشی کد به مقدار مینیمم را درک کرد که نتیجه این تحول میکروکنترلرهای AVR هستند که علاوه بر کاهش و بهینه سازی مقدار کدها به طور واقع عملیات را تنها در یک کلاک سیکل توسط معماری RISC انجام می دهند و از 32 رجیستر همه منظوره استفاده می کنند که باعث شده 4 تا 12 بار سریعتر از میکروهای مورد استفاده کنونی باشند .

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

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

خصوصیات (ATMEGA 8)

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

- دارای 16 دستورالعمل با کارآیی بالا که اکثرا ً تنها در یک کلاک سیکل اجرا می شوند

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

- سرعتی تا 6m/ps ( در فرکانس 6mhz)

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

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

- پایداری حافظه FLASH : قابلیت 1000 بار نوشتن و پاک کردن

- 1024 بایت حافظه داخلی SDRAM

- 512 بایت حافظه EEPROM داخلی قابل برنامه ریزی

- پایداری حافظه EEPROM : قابلیت 10000 بار نوشتن و پاک کردن

- قفل برنامه FLASH و حفاظت EEPROM

خصوصیات جانبی

- دو تایمر – کانتر 8 بیتی با PRESCALER مجزا و دارای مد COMPARE

- یک تایمر – کانتر 16 بیتی با PRESCALER مجزا و دارای COMPARE و CAPTURE

- 3 کانال PWM

- 3 کانال مبدل ، آنالوگ به دیجتال در بسته بندی های TQFP و MLF

- 6 کانال با دقت 10 بیتی

- 2 کانال با دقت 8 بیتی

- 6 کانال مبدل آنالوگ به دیجیتال در بسته بندی های PDIP

- 4 کانال با دقت 10 بیتی

- 2 کانال با دقت 8 بیتی

- دارای RTC با اسیلاتور مجزا

- یک مقایسه کننده آنالوگ داخلی

- USART سریال قابل برنامه ریزی

- WATCHDOG قابل برنامه ریزی با اسیلاتور داخلی

- ارتباط سریال SPT برای برنامه ریزی داخل مدار

- قابلیت ارتباط با پروتکل سریال دو سیمه

- قابلیت ارتباط سریال SPI به صورت MASTER یا SLAVE

خصوصیات ویژه میکروکنترلر

- POWER – ON RESET CIRCUIT

- دارای 5 حالت Sleep (ADC Noise و IDEL و STANDBY و POWER DOWN و POWER – SAVE و REDUCTION )

- منابع وقفه ( INTERRUPT) داخلی و خارجی

- دارای اسیلاتور RC داخلی کالیبره شده

- عملکرد کاملا ً ثابت

- توان مصرفی پایین و سرعت بالا توسط تکنولوژی CMOS

- توان مصرفی در 25a,3V,4MHZ

- حالت فعال 3.6 MA

- در حالت غیر فعال 1.0MA

- ولتاژهای عملیاتی ( کاری )

2.7V تا 5.5 برای (ATMEGA 8L)

4.5V تا 5.5 برای (ATMEGA8)

- فرکانس کاری

0MHZ تا 8MHZ برای (ATMEGA 8L)

0MHZ تا 16MHZ برای (ATMEGA8)

- خطوط I/O و انوع بسته بندی

23 خط ورودی / خروجی قابل برنامه ریزی

28 پایه PDIP و 32 پایه TQFP و MLF

بخش دوم / عملکرد قفل :

این قفل بوسیله سه رمز پنج رقمی که از صفحه کلید دریافت می کند عمل می کند چناچه رمز صحیح باشد یعنی با رمز موجود در حافظه EEPROM برابر باشد کاربر می تواند با انتخاب گزینه مورد نظر رمز خود را تغییر دهد یا قفل را باز کند کلیه مراحل کار با دستگاه ، متناسب با کلید فشار داده شده بر روی صفحه نمایشگر LCD نمایش داده می شود .

اگر در هنگام روشن شدن دستگاه کلید Ok گرفته شود دستگاه از کاربر یک رمز که مربوط به SUPERVISER است درخواست می کند که با وارد کردن آن و در صورت درست بودن ، میکرو کلیه رمزها را صفر می کند این برای این است که اگر یکی از کاربرها رمز خود را فراموش کرد با استفاده از این روش بتواند دوباره رمز خود را وارد کند .

در حالت عادی با روشن شدن دستگاه بر روی صفحه نمایش عبارت ENTER USER NUMBER نقش می بندد و از کاربر می خواهد USER خود را وارد کند وقتی USER وارد شد از او می خواهد PASSWORD را وارد کند با وارد کردن هر عدد بر روی صفحه نمایش یک * ظاهر می شود و در پایان با فشار دادن کلید OK اگر رمز درست بود بر روی صفحه نمایشگر عبارت WELCOM USER نقش می بندد و سه گزینه EXIT/CHANGE/OPEN برای کاربر نشان داده می شود که با انتخاب OK می تواند در را باز کند و با انتخاب CHANGE می تواند رمز را تغییر دهد و با انتخاب ESC از صفحه MENU خارج می شود .

بخش سوم / تشریح زیربرنامه ها :

زیربرنامه BEUTIFULER :

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

زیربرنامه LOGO :

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

این زیربرنامه برای گرفتن PASSWORD مورد استفاده قرار می گیرد یعنی هر جا که از USER خواسته شد PASSWORD خود را وارد کند به این زیر برنامه می آید و در آن پس از تبدیل کلید های زده شده به فرم دسیمال ( دهدهی ) آن ، عدد وارد شده را نیز در یک متغیر ذخیره می کند .

زیربرنامه COMP :

این زیربرنامه برای مقایسه رمز وارد شده توسط USER بوسیله صفحه کلید و همچنین رمز ذخیره شده در هر یک از مکانهای حافظه ای که به هر USER اختصاص دارد به کار می رود چنانچه رمز مورد نظر اشتباه باشد به برنامه اصلی برگشته و در برنامه اصلی از USER می خواهد دوباره این رمز را وارد نماید چنانچه USER رمز را تا سه مرتبه اشتباه وارد نماید این زیربرنامه پس از نمایش SORRY!! بر روی صفحه نمایشگر LCD به ابتدای برنامه باز می گردد و چنانچه رمز درست بود نیز به برنامه اصلی باز می گردد و به برچسب WELCOM می رود .



خرید فایل


ادامه مطلب ...