استفاده از کلید در میکرو

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

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

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

استفاده از کلید در میکرو

پست توسط javad_2010 »

سلام
با استفاده از منطق ۰و ۱ میشه به میکرو فهموند که یه کاری انجام بده،مثلا پایه ایی رو صفر یا یک کنه.این میشه کلید
اما وقتی این کارو انجام میدیم با استفاده از دستور if,این کلید فقط یکبار دستور حلقه رو انجام میده،وبعد از اتمام دستور با فشردن مجدد کلید دیگه دستور انجام نمیشه!!!
چطور میشه دوباره کلید از نو بشه؟؟؟
یعنی کلید بازم عمل کنه،نه فقط یکبار
If(PINB.0==1)
}
Delay_ms(25);
While(PINB.0==0);
دستورات
{
Colonel II
Colonel II
نمایه کاربر
پست: 7545
تاریخ عضویت: سه‌شنبه ۲۶ آذر ۱۳۸۷, ۴:۲۰ ب.ظ
سپاس‌های ارسالی: 9280 بار
سپاس‌های دریافتی: 22106 بار

Re: استفاده از کلید در میکرو

پست توسط sinaset »

سلام بر شما

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

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

مثالی که ذکر کردید

Please Login or Register to see this code


در این وضعیت شما باید یک مقاومت 10 تا 4.7 کیلواهم از GND به پایه مربوط وصل کنید.
در این وضعیت وقت کلید را فعال کنید،پایه 1 میشود،وقتی که کلید رها شود فوری GND میشود .. (یا همون 0 میشود)

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

Re: استفاده از کلید در میکرو

پست توسط javad_2010 »

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

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

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

مثالی که ذکر کردید

Please Login or Register to see this code


در این وضعیت شما باید یک مقاومت 10 تا 4.7 کیلواهم از GND به پایه مربوط وصل کنید.
در این وضعیت وقت کلید را فعال کنید،پایه 1 میشود،وقتی که کلید رها شود فوری GND میشود .. (یا همون 0 میشود)

راهایی دیگری نیز وجود دارد،ولی مقاومت های پول آپ و پول دان دقت کارها را بیشتر افزایش میدهد.
باتشکر.


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

Re: استفاده از کلید در میکرو

پست توسط sinaset »

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

Re: استفاده از کلید در میکرو

پست توسط javad_2010 »

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

Re: استفاده از کلید در میکرو

پست توسط sinaset »

با سلام

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

درست نمی دونم چه کاری می خواهید انجام دهید. اما وقتی پورت را به عنوان خروجی تعریف کردید باید از دستور PORT استفاده کنید،که در برنامه بالا از PIN استفاده کرده اید .

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

Re: استفاده از کلید در میکرو

پست توسط javad_2010 »

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

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

درست نمی دونم چه کاری می خواهید انجام دهید. اما وقتی پورت را به عنوان خروجی تعریف کردید باید از دستور PORT استفاده کنید،که در برنامه بالا از PIN استفاده کرده اید .

پول اپ را هم فعال کنید.. بعد از DDRB.0=1 بنویسید PORTB.0=0x00
باقی دستورات پورت B را به صورت PORTB بنویسید.
باتشکر.


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

Re: استفاده از کلید در میکرو

پست توسط sinaset »

سلام بر شما

پست قبلی شما رو اشتباه مطالعه کردم.. شما DDRB.0 رو به عنوان خروجی قرار دادید و DDRB.1 رو صفر قرار دادید (به عنوان ورودی) .. (پس نیازی به استفاده از دستور پورت نیست چون DDRB.1 صفر می باشد)

می خواهید پورت 1 حدود 6 بار خاموش و روشن شود؟!


برنامه رو براتون اصلاح کردم

Please Login or Register to see this code

فقط در اصلاحه جدید.. مقاومت 4.7 تا 10 کیلو اهم رو از VCC به پایه PORTB.1 وصل کنید و به کلید هم جریان منفی یا GND وصل کنید ( * در برنامه های حرفه اکثرا از منفی برای فعال کردن کلید ها استفاده می کنند،شاید یکی از دلایلش حرکت الکترونیک ها از منفی به مثبت می باشد)

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

Re: استفاده از کلید در میکرو

پست توسط javad_2010 »

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

پست قبلی شما رو اشتباه مطالعه کردم.. شما DDRB.0 رو به عنوان خروجی قرار دادید و DDRB.1 رو صفر قرار دادید (به عنوان ورودی) .. (پس نیازی به استفاده از دستور پورت نیست چون DDRB.1 صفر می باشد)

می خواهید پورت 1 حدود 6 بار خاموش و روشن شود؟!


برنامه رو براتون اصلاح کردم

Please Login or Register to see this code

فقط در اصلاحه جدید.. مقاومت 4.7 تا 10 کیلو اهم رو از VCC به پایه PORTB.1 وصل کنید و به کلید هم جریان منفی یا GND وصل کنید ( * در برنامه های حرفه اکثرا از منفی برای فعال کردن کلید ها استفاده می کنند،شاید یکی از دلایلش حرکت الکترونیک ها از منفی به مثبت می باشد)

و نکته مهم دیگر،برنامه نوشته شده توسط شما،در حلقه تعریف نشده بود! به خاطر داشته باشید همیشه در تابع اصلی یعنی void main همیشه یک حلقه بی نهایت قرار دهید و کدهایی که می خواهید دائم برسی شوند را در ان قرار بدهید،وگرنه به مشکلات به مانند مشکلاتی که اکنون داشتید اید برخواهید خورد.
باتشکر.

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

Re: استفاده از کلید در میکرو

پست توسط javad_2010 »

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

پست قبلی شما رو اشتباه مطالعه کردم.. شما DDRB.0 رو به عنوان خروجی قرار دادید و DDRB.1 رو صفر قرار دادید (به عنوان ورودی) .. (پس نیازی به استفاده از دستور پورت نیست چون DDRB.1 صفر می باشد)

می خواهید پورت 1 حدود 6 بار خاموش و روشن شود؟!


برنامه رو براتون اصلاح کردم

Please Login or Register to see this code

فقط در اصلاحه جدید.. مقاومت 4.7 تا 10 کیلو اهم رو از VCC به پایه PORTB.1 وصل کنید و به کلید هم جریان منفی یا GND وصل کنید ( * در برنامه های حرفه اکثرا از منفی برای فعال کردن کلید ها استفاده می کنند،شاید یکی از دلایلش حرکت الکترونیک ها از منفی به مثبت می باشد)

و نکته مهم دیگر،برنامه نوشته شده توسط شما،در حلقه تعریف نشده بود! به خاطر داشته باشید همیشه در تابع اصلی یعنی void main همیشه یک حلقه بی نهایت قرار دهید و کدهایی که می خواهید دائم برسی شوند را در ان قرار بدهید،وگرنه به مشکلات به مانند مشکلاتی که اکنون داشتید اید برخواهید خورد.
باتشکر.

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

Re: استفاده از کلید در میکرو

پست توسط sinaset »

سلام بر شما

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

Re: استفاده از کلید در میکرو

پست توسط javad_2010 »

ممنون از توجه تون
[External Link Removed for Guests]
ارسال پست

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