سلام
میخوام سه تا ال ای دی رو با استفاده از یک کلید روشن کنم بطوری که با زدن کلید، led اول روشن.با زدن کلید برای بار دوم ledاول خاموش.ledدوم روشن.برا بار سوم فشار دادن کلید ledدوم خاموش و سومی روشن.برای بار چهارم.led سوم خاموش و اولی روشن.به این ترتیب پیش بره
نظری دارین.البته بدونه حلقه While.چون در حلقه برنامه گیر میکنه و دیگه حلقه while(1) بر نمیگرده.
تعریف کلید
مدیران انجمن: SAMAN, sinaset, شوراي نظارت

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

- پست: 7545
- تاریخ عضویت: سهشنبه ۲۶ آذر ۱۳۸۷, ۴:۲۰ ب.ظ
- سپاسهای ارسالی: 9280 بار
- سپاسهای دریافتی: 22106 بار
Re: تعریف کلید
با سلام
در حلقه while انجامش بدید،مشکلی پیش نمی یاد.
خدمت شما:
Please Login or Register to see this code
در حلقه while انجامش بدید،مشکلی پیش نمی یاد.
خدمت شما:
Please Login or Register to see this code
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.
با عرض پوزش،دیگر در انجمن حضور ندارم،که به پیام ها پاسخ بدم.

-
- پست: 60
- تاریخ عضویت: پنجشنبه ۲۲ بهمن ۱۳۹۴, ۹:۰۳ ب.ظ
- سپاسهای ارسالی: 158 بار
- سپاسهای دریافتی: 27 بار
Re: تعریف کلید
ممنون از جوابتون
ولی بخاطر این گفتم حلقه while استفاده نشه که برنامه برگرده به حلقه while اول تا باقی شرط ها رو بررسی کنه.الان برنامه در while(PINC.0==1); متوقف میشه و در حال چک کردن pinc.0==1 باقی میمونه
و باقی شرط ها رو چک نمیکنه
مثلا دیگه امکان استفاده ا کلید دیگه برای بررسی وجود نداره مثل
Please Login or Register to see this code
دیگه این شرط بررسی نمیشه
ولی بخاطر این گفتم حلقه while استفاده نشه که برنامه برگرده به حلقه while اول تا باقی شرط ها رو بررسی کنه.الان برنامه در while(PINC.0==1); متوقف میشه و در حال چک کردن pinc.0==1 باقی میمونه
و باقی شرط ها رو چک نمیکنه
مثلا دیگه امکان استفاده ا کلید دیگه برای بررسی وجود نداره مثل
Please Login or Register to see this code
دیگه این شرط بررسی نمیشه

- پست: 7545
- تاریخ عضویت: سهشنبه ۲۶ آذر ۱۳۸۷, ۴:۲۰ ب.ظ
- سپاسهای ارسالی: 9280 بار
- سپاسهای دریافتی: 22106 بار
Re: تعریف کلید
سلام بر شما
باید قید می کردید که برنامه دیگر نوشته اید.! تا پورت ها و .. براساس ان تنظیم شود. پس پورت ها رو براساس برنامه خودتان تنظیم کنید،ضمن اینکه،دستور (if(PINC.0==1 را به همراه دستوراتش و متغیر تعریف شده را در برنامه اتان کپی کنید. نیازی نیست که کل برنامه که داده ام رو در برنامه خود کپی کنید..
باتشکر.
باید قید می کردید که برنامه دیگر نوشته اید.! تا پورت ها و .. براساس ان تنظیم شود. پس پورت ها رو براساس برنامه خودتان تنظیم کنید،ضمن اینکه،دستور (if(PINC.0==1 را به همراه دستوراتش و متغیر تعریف شده را در برنامه اتان کپی کنید. نیازی نیست که کل برنامه که داده ام رو در برنامه خود کپی کنید..
باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.
با عرض پوزش،دیگر در انجمن حضور ندارم،که به پیام ها پاسخ بدم.

-
- پست: 60
- تاریخ عضویت: پنجشنبه ۲۲ بهمن ۱۳۹۴, ۹:۰۳ ب.ظ
- سپاسهای ارسالی: 158 بار
- سپاسهای دریافتی: 27 بار
Re: تعریف کلید
sinaset نوشته شده:سلام بر شما
باید قید می کردید که برنامه دیگر نوشته اید.! تا پورت ها و .. براساس ان تنظیم شود. پس پورت ها رو براساس برنامه خودتان تنظیم کنید،ضمن اینکه،دستور (if(PINC.0==1 را به همراه دستوراتش و متغیر تعریف شده را در برنامه اتان کپی کنید. نیازی نیست که کل برنامه که داده ام رو در برنامه خود کپی کنید..
باتشکر.
ممنون
یه سوال چرا در برنامه پورت B رو مقدار های 1 - 2 - 4 لحاظ کردین؟؟؟؟
چقدر امکان داره پروتئوس برنامه درست شیه سازی نکنه؟؟؟
با تشکر


- پست: 7545
- تاریخ عضویت: سهشنبه ۲۶ آذر ۱۳۸۷, ۴:۲۰ ب.ظ
- سپاسهای ارسالی: 9280 بار
- سپاسهای دریافتی: 22106 بار
Re: تعریف کلید
سلام و خواهش میکنم.
این یک سبک مقداری بر اساس دسیمال می باشد. (اموزش های اینتاپیک را ببینید )
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 درصد کامل نیست! و اشکالاتی نیز دارند و نباید به ان اطمینان کرد! (بطور کامل)
اما معمولا چیزی ها ساده رو بخوبی پشتبانی می کند،مشکل شما کجاست؟!
باتشکر.
این یک سبک مقداری بر اساس دسیمال می باشد. (اموزش های اینتاپیک را ببینید )
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 درصد کامل نیست! و اشکالاتی نیز دارند و نباید به ان اطمینان کرد! (بطور کامل)
اما معمولا چیزی ها ساده رو بخوبی پشتبانی می کند،مشکل شما کجاست؟!
باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.
با عرض پوزش،دیگر در انجمن حضور ندارم،که به پیام ها پاسخ بدم.