تعریف کلید

در اين بخش مي‌توانيد در مورد تمامي مسائل مرتبط با میکروکنترلرهای AVR به بحث بپردازيد

مدیران انجمن: SAMAN, sinaset, شوراي نظارت

ارسال پست
Novice Poster
Novice Poster
پست: 60
تاریخ عضویت: پنج‌شنبه ۲۲ بهمن ۱۳۹۴, ۹:۰۳ ب.ظ
سپاس‌های ارسالی: 158 بار
سپاس‌های دریافتی: 27 بار

تعریف کلید

پست توسط javad_2010 »

سلام
میخوام سه تا ال ای دی رو با استفاده از یک کلید روشن کنم بطوری که با زدن کلید، led اول روشن.با زدن کلید برای بار دوم ledاول خاموش.ledدوم روشن.برا بار سوم فشار دادن کلید ledدوم خاموش و سومی روشن.برای بار چهارم.led سوم خاموش و اولی روشن.به این ترتیب پیش بره
نظری دارین.البته بدونه حلقه While.چون در حلقه برنامه گیر میکنه و دیگه حلقه while(1) بر نمیگرده.
Colonel II
Colonel II
نمایه کاربر
پست: 7545
تاریخ عضویت: سه‌شنبه ۲۶ آذر ۱۳۸۷, ۴:۲۰ ب.ظ
سپاس‌های ارسالی: 9280 بار
سپاس‌های دریافتی: 22106 بار

Re: تعریف کلید

پست توسط sinaset »

با سلام
در حلقه while انجامش بدید،مشکلی پیش نمی یاد.

خدمت شما:
Please Login or Register to see this code
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.
با عرض پوزش،دیگر در انجمن حضور ندارم،که به پیام ها پاسخ بدم.
Novice Poster
Novice Poster
پست: 60
تاریخ عضویت: پنج‌شنبه ۲۲ بهمن ۱۳۹۴, ۹:۰۳ ب.ظ
سپاس‌های ارسالی: 158 بار
سپاس‌های دریافتی: 27 بار

Re: تعریف کلید

پست توسط javad_2010 »

ممنون از جوابتون
ولی بخاطر این گفتم حلقه while استفاده نشه که برنامه برگرده به حلقه while اول تا باقی شرط ها رو بررسی کنه.الان برنامه در while(PINC.0==1); متوقف میشه و در حال چک کردن pinc.0==1 باقی میمونه
و باقی شرط ها رو چک نمیکنه
مثلا دیگه امکان استفاده ا کلید دیگه برای بررسی وجود نداره مثل
Please Login or Register to see this code
دیگه این شرط بررسی نمیشه
Colonel II
Colonel II
نمایه کاربر
پست: 7545
تاریخ عضویت: سه‌شنبه ۲۶ آذر ۱۳۸۷, ۴:۲۰ ب.ظ
سپاس‌های ارسالی: 9280 بار
سپاس‌های دریافتی: 22106 بار

Re: تعریف کلید

پست توسط sinaset »

سلام بر شما

باید قید می کردید که برنامه دیگر نوشته اید.! تا پورت ها و .. براساس ان تنظیم شود. پس پورت ها رو براساس برنامه خودتان تنظیم کنید،ضمن اینکه،دستور (if(PINC.0==1 را به همراه دستوراتش و متغیر تعریف شده را در برنامه اتان کپی کنید. نیازی نیست که کل برنامه که داده ام رو در برنامه خود کپی کنید..
باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.
با عرض پوزش،دیگر در انجمن حضور ندارم،که به پیام ها پاسخ بدم.
Novice Poster
Novice Poster
پست: 60
تاریخ عضویت: پنج‌شنبه ۲۲ بهمن ۱۳۹۴, ۹:۰۳ ب.ظ
سپاس‌های ارسالی: 158 بار
سپاس‌های دریافتی: 27 بار

Re: تعریف کلید

پست توسط javad_2010 »

sinaset نوشته شده:سلام بر شما

باید قید می کردید که برنامه دیگر نوشته اید.! تا پورت ها و .. براساس ان تنظیم شود. پس پورت ها رو براساس برنامه خودتان تنظیم کنید،ضمن اینکه،دستور (if(PINC.0==1 را به همراه دستوراتش و متغیر تعریف شده را در برنامه اتان کپی کنید. نیازی نیست که کل برنامه که داده ام رو در برنامه خود کپی کنید..
باتشکر.




ممنون
یه سوال چرا در برنامه پورت B رو مقدار های 1 - 2 - 4 لحاظ کردین؟؟؟؟


چقدر امکان داره پروتئوس برنامه درست شیه سازی نکنه؟؟؟

با تشکرتصویر
Colonel II
Colonel II
نمایه کاربر
پست: 7545
تاریخ عضویت: سه‌شنبه ۲۶ آذر ۱۳۸۷, ۴:۲۰ ب.ظ
سپاس‌های ارسالی: 9280 بار
سپاس‌های دریافتی: 22106 بار

Re: تعریف کلید

پست توسط sinaset »

سلام و خواهش میکنم.

این یک سبک مقداری بر اساس دسیمال می باشد. (اموزش های اینتاپیک را ببینید )

1 یعنی پورت B وضعیتش برابر بشود با ا 0b00000001 (یعنی PORTB.0 در وضعیت 1 قرار بگیرید)
2 یعنی پورت B وضعیتش برابر بشود با ا 0b00000010 (یعنی PORTB.1 در وضعیت 1 قرار بگیرید)
4 یعنی پورت B وضعیتش برابر بشود با ا 0b00000100 (یعنی PORTB.2 در وضعیت 1 قرار بگیرید)

در صورتی که باقی پایه ها پورت B برای منظور دیگر استفاده بشود،بهتر است بنویسیم

PORTB.0=1
PORTB.1=1
PORTB.2=1

بطوری که دستور PORTB که استفاده کردیم،یک دستور سراسری برای راحتی کار می باشد..
--
پرتئوس 100 درصد کامل نیست! و اشکالاتی نیز دارند و نباید به ان اطمینان کرد! (بطور کامل)
اما معمولا چیزی ها ساده رو بخوبی پشتبانی می کند،مشکل شما کجاست؟!

باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.
با عرض پوزش،دیگر در انجمن حضور ندارم،که به پیام ها پاسخ بدم.
ارسال پست

بازگشت به “میکروکنترلرهای AVR”