فرمت فایل : word(قابل ویرایش)
تعداد صفحات:40
فهرست مطالب:
چکیده :
مقدمه :
مختصری راجع به AVR
عملیات تک سیکل :
طراحی برای زبان های BASIC و C
کلیات پروژه و نحوه عملکرد :
توضیح در مورد سخت افزار
خصوصیات ATmega16 , ATmega16 L
کلاک سیستم
کلاک خارجی (EXTERNAL CLOCK)
پیکره بندی و کار با امکانات AVR در BASCOM
پیکره بندی پورت ها
بررسی پورت های میکرو ATMEGA32
رجیسترهای پورت A
رجیسترهای پورت A عبارتند از :
استفاده از پورت A به عنوان یک I/O عمومی دیجیتال
پورت B
رجیسترهای پورت B
رجیسترهای پورت B عبارتند از :
استفاده از پورت B به عنوان یک I/O عمومی دیجیتال
PORTB.7_SCK
رجیسترهای پورت C
رجیسترهای پورت C عبارتند از :
استفاده از پورت C به عنوان یک I/O عمومی دیجیتال
پورت D
استفاده از پورت D به عنوان یک I/O عمومی دیجیتال
منابع و مأخذ
چکیده :
سخت افزار این پروژه به طور کلی از یک میکروکنترلر 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 با دستورات فراوان طراحی شده اند که باعث میشود حجم کد تولید شده کم و سرعت بالاتری به دست آید .