سلام
من تازه شروع به یادگیری کدنویسی AVR کردم و اطلاعات زیادی در این مورد ندارم. در واقع این اولین پروژه ای هست که دارم کار میکنم و در قسمتی از اون به مشکل برخوردم ...
کاری که میخوام انجام بدم این هست که وقتی به یکی از پین های ورودی AVR (فرضا PD.0) مقدار 1 داده شد یک سری از دستورات رو اجرا کنه. من برای این کار از دستور if استفاده کردم. اما موضوعی که هست اینه که من میخوام بعد از 1 شدن ورودی، دستورات مربوطه فقط یکبار اجرا بشه، اما مشکل اینجاست که ورودی من برای مدت طولانی 1 باقی می مونه و طبیعتا دستورات زیر if بعد از اجرای آخرین خط مجددا به ابتدا برمیگرده و دستورات رو تکرار میکنه اما من نمیخوام این اتفاق بیفته. میخوام فقط یکبار دستورات اجرا بشه و بعد برنامه منتظر بمونه تا ورودی 0 بشه و دستورات دیگری رو اجرا کنه و اون هم فقط یک بار و مجددا منتظر بمونه تا ورودی 1 بشه و همین طور این پروسه تکرار بشه.
اما متاسفانه از اونجایی که تجربه ای در کد نویسی ندارم نمیدونم چطور باید این کار رو انجام بدم.
ممنون میشم از دوستان اگه راهنماییم بفرمایند.
من تازه شروع به یادگیری کدنویسی AVR کردم و اطلاعات زیادی در این مورد ندارم. در واقع این اولین پروژه ای هست که دارم کار میکنم و در قسمتی از اون به مشکل برخوردم ...
کاری که میخوام انجام بدم این هست که وقتی به یکی از پین های ورودی AVR (فرضا PD.0) مقدار 1 داده شد یک سری از دستورات رو اجرا کنه. من برای این کار از دستور if استفاده کردم. اما موضوعی که هست اینه که من میخوام بعد از 1 شدن ورودی، دستورات مربوطه فقط یکبار اجرا بشه، اما مشکل اینجاست که ورودی من برای مدت طولانی 1 باقی می مونه و طبیعتا دستورات زیر if بعد از اجرای آخرین خط مجددا به ابتدا برمیگرده و دستورات رو تکرار میکنه اما من نمیخوام این اتفاق بیفته. میخوام فقط یکبار دستورات اجرا بشه و بعد برنامه منتظر بمونه تا ورودی 0 بشه و دستورات دیگری رو اجرا کنه و اون هم فقط یک بار و مجددا منتظر بمونه تا ورودی 1 بشه و همین طور این پروسه تکرار بشه.
اما متاسفانه از اونجایی که تجربه ای در کد نویسی ندارم نمیدونم چطور باید این کار رو انجام بدم.
ممنون میشم از دوستان اگه راهنماییم بفرمایند.
دیدگاه