اطلاعیه

Collapse
No announcement yet.

پرش از یک حلقه به حلقه دیگه در keil

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    پرش از یک حلقه به حلقه دیگه در keil

    سلام دوستان
    میگم میخواستم تو کیل از یک حلقه while به یه حلقه while دیگه برم اگه میشه کمکم کنید
    خیلی ممنون

    #2
    پاسخ : پرش از یک حلقه به حلقه دیگه در keil

    سلام
    دوست عزیز منظورتون اینه که میخواین طوری برنامه بنویسین که برنامه دو تا while داشته باشه؟
    چیزی که من متوجه شدم اینه که شما برنامتون رو به دو قسمت تقسیم کردین و هر قسمت رو میخواین تو یه دونه while قرار بدین، اولا اصلا چرا اینکارو انجام بدین کل برنامتون رو تو یه while بنویسین و اگر برای جدا کردن قسمت ها از همدیگه:
    #اگه قسمت اول تعداد دفعات کاری که انجام میده مشخصه ار حلقه for استفاده کنید
    #اگر زمان رخ داد مشخص نیست با استفاده از یک tag از اینتراپت استفاده کنید
    اگر هم کارتون اینه که دو تا while داشته باشید کافی هست برای while اول شرطی رو بزارید که در زمان مورد نیاز نقض بشه مثلا (while(tag==0 و از حلقه اول خارج میشه و به حلقه بعدی میره این دو حلقه تو main برنامه هست.
    امیدوارم که تونسته باشم سوالتون رو پاسخ داده باشم.

    با احترام
    وبلاگ اطلاعات در مورد کنترل صنعتی و PLC و میکروکنترلرهای AVR و ARM
    www.armplc.ir

    دیدگاه


      #3
      پاسخ : پرش از یک حلقه به حلقه دیگه در keil

      سلام
      خیلی ممنون
      من 2 تا while دارم و میخواستم اگه یه پورتی 1 شد بره while بعدی میخواستم ببینم میشه یا نه؟
      مرسی

      دیدگاه


        #4
        پاسخ : پرش از یک حلقه به حلقه دیگه در keil

        سلام
        در پاسخ قبلی گفتم شما میتونی یه متغییر مثل tag در نظر بگیری که شرط حلقه while باشه و زمانی که شما اونو نقض کنی به حلقه بعدی میره
        وبلاگ اطلاعات در مورد کنترل صنعتی و PLC و میکروکنترلرهای AVR و ARM
        www.armplc.ir

        دیدگاه


          #5
          پاسخ : پرش از یک حلقه به حلقه دیگه در keil

          سلام
          میگم بدون استفاده از اینتراپت هم میشه این کار رو کرد؟
          آخه من هنوز اینتراپت رو با آرم راه ننداختم

          دیدگاه


            #6
            پاسخ : پرش از یک حلقه به حلقه دیگه در keil

            اگه یه کدی برا اینتراپت دارید میشه بذارید تا مشکلم حل بشه؟
            فکر میکنم با اینتراپت راحت تر بشه مشکل رو حل کرد
            خیلی ممنون میشم اگه کمکم کنید

            دیدگاه


              #7
              پاسخ : پرش از یک حلقه به حلقه دیگه در keil

              شما در while اول شرط بزارید که اگه پین فلان 1 شد حلقه را ترک کنه و به حلقه ی بعدی بره.
              روش اولشرط درون پرانتز while هستش:
              مثال:
              (while (pinX.Y==1
              {
              //برنامه ی حلقه ی شماره یک
              }
              //-----------------
              (while(1
              {
              //حلقه ی شماره دو
              }

              البته منظور از pinX.Y همون دستوری هستش که باهاش میشه پین هارو خوند، شما اون دستور را بجای این دستور بزارید. (دلیل اینکه دستور اصلی را ننوشتم اینه که شما نوع میکرو را مشخص نکردید.)

              روش دوم:
              استفاده از یک شرط و دستور ;break
              (while(1
              {
              ;if pinX.Y==1 break
              //حلقه ی شماره یک
              }

              (while(1
              {
              //حلقه ی شماره دو
              }
              با دستور braek میکرو از حلقه ی اول خارج میشه و به حلقه بعدی میره.
              ===================
              ربطی به اینتراپت نداره، ایشون بد مثال زدند.
              1 در دنیا 100 در آخرت (درس و مشق فعالیتمو تو انجمن کم کرده)
              من آنچه شرط بلاغست با تو میآ‌گویم. تو خواه از سخنم پند گیر و خواه ملال. سعدی
              !Electronic On! Programming On
              هوشمندانه سوال بپرسیم!
              http://ir02x6.persiangig.com/logo/eca/tanks_01.png

              دیدگاه


                #8
                پاسخ : پرش از یک حلقه به حلقه دیگه در keil

                سلام
                خیلی ممنون
                لطف کردید
                میکرو من at91sam7x256 ه فقط مونده تستش کنم
                مرسی

                دیدگاه

                لطفا صبر کنید...
                X