برنامه های نیمسال-دوم-91-92

برنامه

برنامه های تدریس شده در نیمسال دوم سال 91-92

برنامه ی 5 ثانیه زمان

در این برنامه با نگه داشتن کلید به مدت 5 ثانیه دیود روشن می شود و اگر کمتر از 5 ثانیه آن را نگه داریم، تاثیری ندارد.

در این برنامه اگر کلید را نگه نداریم خط 20برنامه

while(PINA.1==1)

University

اجرا نشده و دائما ایکس صفر می شود

حال اگر کلید را نگه داریم برنامه وارد حلقه ی خط 20 می شود و هر 0.1 ثانیه به ایکس اضافه می شود

در این حالت اگر کلید را زودتر از 5 ثانیه رها کنیم ایکس مجددا صفر می شود

بعد از 5 ثایه ایکس بیش از 50 می شود و دستور خط 24 اجرا می شود و دیود روشن می شود

و تا وقتی کلید را نگه داریم، دیود روشن می ماند و خاموش نمی شود برای خاموش شدن آن باید کلید را رها کرد و مجددا 5 ثانیه نگه داشت


برنامه ی تنظیم سرعت چشمک زدن دیود

در این برنامه با کلید up می توان مقدار سرعت را افزایش و با کلید down می توان مقدار سرعت را کاهش داد.

University

در این برنامه ایکس می تواند بین 1 الی 30 باشد اگر ایکس 1 باشد دیود هر 10 میلی ثانیه و اگر ایکس 30 باشد، دیود هر 300 میلی ثانیه یک بار خاموش و روشن می شود. البته اگر ایکس بیشتر شود برای کاهش آن شما باید دست خود را بیشتر روی کلید نگه دارید


برنامه ی فرکانس متر با وقفه ی خارجی

در این برنامه با استفاده از وقفه ی خارجی می توان فرکانسی تا 10 کیلو هرتز را اندازه گیری نمود.

University

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

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

میکروکنترلر باید از تابع تاخیر 1 ثانیه ای خارج شده و به وقفه برود و سپس برگردد که این منجر به

افزایش زمان اجرای تابع تاخیر 1 ثانیه ای می شود

برای رفع این مشکل باید تاخیر 1 ثانیه ای را با تایمر ایجاد نماییم


برنامه ی فتوسل با میکروکنترلر AVR

در این برنامه از یک سنسور نور یا LDR استفاده شده است. این سنسور در تاریکی حدود یک مگا اهم و در نور خورشید حدود یک کیلو اهم مقاومت دارد. در این برنامه وقتی مقاومت روی سنسور حدود 100 کیلو اهم شود (نور کم شود)، لامپ روشن شده و در صورتی که این مقاومت حدود 50 کیلو اهم شود (نور زیاد شود)، لامپ خاموش می شود. در شکل زیر نحوه ی راه اندازی این مدار را مشاهده می کنید:

University

در این برنامه LDR و مقامت یک مگا اهمی با هم سری هستند. وقتی مقاومت LDR برابر 100 کیلو اهم باشد، طبق قانون تقسیم ولتاژ، ولتاژ روی پایه ی ADC برابر 0.45 ولت و وقتی این مقاومت 50 کیلو اهم است این ولتاژ حدود 0.23 ولت است. ADC با اندازه گیری این دو ولتاژ عدد 93 و 48 را بر می گرداند.


برنامه ی دماسنج

در این برنامه اگر دما بالای 30 درجه بود خروجی وصل شده و اگر زیر 27 درجه بود، خروجی وصل می شود و در دمای بین 30 تا 27 خروجی بدون تغییر باقی می ماند. در دمای 30 درجه خروجی سنسور 0.3 ولت است و در نتیجه عدد ADC برابر 61 خواهد شد و در دمای 27 درجه خروجی 0.27 ولت است که عدد ADC برابر 55 خواهد شد.

University


برنامه ی دریافت اطلاعات از طریق USART

در این برنامه فرکانس میکروکنترلر برابر 8 مگاهرتز و نرخ ارسال برابر 9600 است که در این حالت عددی که باید در رجیستر UBRR قرار بگیرد برابر 51 یا 33 هگز می باشد.

University

در این برنامه داده ی دریافت شده هم به صورت مبنای 10 و هم به صورت کد اسکی نشان داده می شود.


ایجاد 2 ثانیه زمان با میکروکنترلر AVR

در این برنامه فرکانس میکروکنترلر برابر 4 مگاهرتز می باشد و تقسیم کننده ی فرکانسی تایمر 0 برابر 1024 انتخاب شده است. برای ایجاد 2 ثانیه تایمر 7812 شمارش انجام می دهد مه برای انجام این تعداد شمارش 30.51 بار سر ریز می شود. در این حالت تایمر 30 بار کامل سر ریز شده و 0.51 شمارش خود یعنی 132 شماره می شمارد. برای جبران این شمارش تایمر را با عدد 123 بار گذاری می کنیم

University

در این برنامه هر 2 ثانیه یکبار یک LED خاموش و روشن می شود.


ایجاد دو زمان 3 ثانیه و 0.2 ثانیه با تایمر 0

به دلیل اینکه در این برنامه دو زمان مختلف مد نظر است، یکی از این زمانها تقریبی خواهد بود و یکی از زمانها دقیق می شود. در این برنامه زمان 3 ثانیه دقیق فرض شده است و فرکانس میکروکنترلر 2 مگاهرتز است. تقسیم فرکانسی برابر 1024 بوده و برای ایجاد 3 ثانیه تایمر می بایست 5859 شمارش انجام دهد که در این صورت 22.88 بار سر ریز می شود که اگر حساب نماییم 29 شمارش تا 23 سر ریز کم دارد که در ابتدا این عدد را در TCNT0 بار گذاری می کنیم.

University

در این برنامه حدود 0.2 ثانیه (کمی بیشتر) یک LED که به پورت A.0 متصل شده است چشمک می زند و هر 3 ثانیه یکبار LED PORTA.1 روشن می شود و عبارت Welcome از طریق USART توسط تابع printf ارسال می شود. برای تنظیم نرخ ارسال برابر 9600 در رجیستر UBRR عدد 12 قرار گرفته است که در این شرایط 016 درصد خطا داریم.


تمامی برنامه ها در فایل ZIP قرار دارند. برای باز کردن آنها، آنها را دانلود نمایید و فایل با پسوند C را با Notepad باز نمایید (یا با Code Vision AVR) تمامی نقشه ها با نرم افزار پروتئوس ورژن 7 به بالا باز می شوند


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *