ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 10 از 10
  1. #1
    2013/02/26
    133
    4

    interrupt و اولويت !!

    سلام خدمت دوستان :nerd:
    مي خواستم بدونم تو سري 18 پيک اگه مثلا دو وقفه داشته باشيم a و b که a ذر اولويت بالاتر قرار گرفته .حالا فرض کنيد وقفه b رسيده و در وسط isr ناگهان وقفه ي a ميرسه.حالا مي خوام بدونم که ميکرو وقفه ي b که در اولويت پايينتري قرار داره رو ادامه مي ده و بعد از تموم شدنش سراغ وقفه ي a ميره يا نه وقفه ي b رو pause ميکنه و سراغ وقفه ي a ميره و پس از اتمام دوباره وقفه b رو ادامه ميده ؟
    در يک ميکرو پروسسوري که قبلا تا حد کمي کار کردم اين قابليت انتخاب پذير بود که معروف به nested و priority بودن.حالا مي خوام بدونم تو اين ميکروکنترلر وضعيت چه جوريه.با تشکر :redface:
    در ضمن ، هر چند مهم نيس ولي من با mplab x و c8 کار مي کنم .
    ای خدا ، من باید از نظر علم از همه برتر باشم، تا مبادا که دشمنان مرا از این راه طعنه زنند. باید به آن سنگدلانی که علم را بهانه کرده و به دیگران فخر میآ*فروشند، ثابت کنم که خاک پای من هم نخواهند شد. باید همه آن تیره دلان مغرور و متکبر را به زانو در آورم، آنگاه خود خاضع ترین و افتاده ترین مرد روی زمین باشم.
    شهید دکتر مصطفی چمران
  2. #2
    2010/12/30
    53
    0

    پاسخ : interrupt و اولويت !!

    نقل قول نوشته اصلی توسط ali_rostami_72
    .حالا مي خوام بدونم که ميکرو وقفه ي b که در اولويت پايينتري قرار داره رو ادامه مي ده و بعد از تموم شدنش سراغ وقفه ي a ميره يا نه وقفه ي b رو pause ميکنه و سراغ وقفه ي a ميره و پس از اتمام دوباره وقفه b رو ادامه ميده ؟
    سلام. قطعا روند روتین مربوط به وقفه b قطع شده و به روتین وقفه a خواهد رفت. در غیر این صورت بحث nested و priority بی معنی میشد.
  3. #3
    2013/02/26
    133
    4

    پاسخ : interrupt و اولويت !!

    نقل قول نوشته اصلی توسط e.fazli
    سلام. قطعا روند روتين مربوط به وقفه b قطع شده و به روتين وقفه a خواهد رفت. در غير اين صورت بحث nested و priority بي معني ميشد.
    چرا بي معني مي شد؟اگر وقفه ي a رو ادامه بده و پس از اتمامش به سراغ وقفه ي b بره ميشه حالت priority ميشه. بعبارتي در حالت اجرا ي يک isr بدون در نظرگرفت ساير اولويت بندي ها، در اون لحظه، وقفه ي در حال اجرا اولويتش از همه بالاتره.
    ای خدا ، من باید از نظر علم از همه برتر باشم، تا مبادا که دشمنان مرا از این راه طعنه زنند. باید به آن سنگدلانی که علم را بهانه کرده و به دیگران فخر میآ*فروشند، ثابت کنم که خاک پای من هم نخواهند شد. باید همه آن تیره دلان مغرور و متکبر را به زانو در آورم، آنگاه خود خاضع ترین و افتاده ترین مرد روی زمین باشم.
    شهید دکتر مصطفی چمران
  4. #4
    2010/12/30
    53
    0

    پاسخ : interrupt و اولويت !!

    نقل قول نوشته اصلی توسط phoenix2000
    چرا بي معني مي شد؟اگر وقفه ي a رو ادامه بده و پس از اتمامش به سراغ وقفه ي b بره ميشه حالت priority ميشه. بعبارتي در حالت اجرا ي يک isr بدون در نظرگرفت ساير اولويت بندي ها، در اون لحظه، وقفه ي در حال اجرا اولويتش از همه بالاتره.
    حق با شماست. ولی برداشت من از سوال شما وضعیت nesting بود.
    در PIC زمانی که وقفه ای در داخل یک روتین وقفه دیگه رخ میده چنانچه اولویت وقفه جدید بالاتر از اولی باشه روند وقفه فعلی قطع و برنامه به بردار وقفه جدید پرش میکنه( آدرس برگشت در استک ذخیره میشه). ولی اگر اولویت پائین تر یا برابر باشه تا انتهای روتین وقفه جاری پرش رخ نخواهد داد.
  5. #5
    2013/02/26
    133
    4

    پاسخ : interrupt و اولويت !!

    خيلي ممنون از پاسختون .يه سوال ديگه در اين مورد تو ديتا شيت توضيحي داده يانه .و ايا اين امکان وجود داره که به حالت priority برد.؟
    ای خدا ، من باید از نظر علم از همه برتر باشم، تا مبادا که دشمنان مرا از این راه طعنه زنند. باید به آن سنگدلانی که علم را بهانه کرده و به دیگران فخر میآ*فروشند، ثابت کنم که خاک پای من هم نخواهند شد. باید همه آن تیره دلان مغرور و متکبر را به زانو در آورم، آنگاه خود خاضع ترین و افتاده ترین مرد روی زمین باشم.
    شهید دکتر مصطفی چمران
  6. #6
    2010/12/30
    53
    0

    پاسخ : interrupt و اولويت !!

    خواهش میکنم. بله در دیتا شیت هر کدوم از سری 18F در بخش مربوط به Interrupt به طور مختصر توضیحاتی داده شده. در مورد سوال دومتون هم این مورد در PIC های 8 بیتی تا حدود کمی امکان پذیر هست. به طور کلی در سری 18F فقط دو بردار وقفه وجود داره که یکی با اولویت بالا و دیگری با اولویت پائین هست. هرگاه وقفه ای رخ بده بسته به نوع به یکی از این دو بردار ثابت پرش میکنه. مثلا ممکنه در یک برنامه 3 وقفه جنبی با اولویت پائین و 2 وقفه با اولویت بالا وجود داشته باشه. پرچم مربوط به 3 وقفه با اولویت پائین در روتین وقفه با اولویت کمتر به وسیله نرم افزار نوشته شده توسط کاربر چک شده و به دلخواه کاربر اولویت بین این سه وقفه تعیین میشه. در مورد 2 وقفه با اولویت بالاتر هم به همین صورته و این وظیفه کاربر هست که پرچم ها رو چک کنه و وقفه ها رو بررسی کنه.
  7. #7
    2012/12/14
    89
    12

    پاسخ : interrupt و اولويت !!

    سلام دوستان
    اگر در ميکرو pic16f چند وقفه همزمان اتفاق بيفته اولويت با کدومه؟ آيا بعد اجراي وقفه اول،وارد روتين وقفه دوم ميشه؟
  8. #8
    2007/11/22
    تبریز
    2,483
    492

    پاسخ : interrupt و اولويت !!

    نقل قول نوشته اصلی توسط javad-movahediyan
    سلام دوستان
    اگر در ميکرو pic16f چند وقفه همزمان اتفاق بيفته اولويت با کدومه؟ آيا بعد اجراي وقفه اول،وارد روتين وقفه دوم ميشه؟
    سلام.
    اولويت ندارند. برنامه ي هر کدوم که بالاتر نوشته بشه، اولويت اجرا با اون هست.
    معمولا و اصولا در ابتداي روتين هروقفه؛ وقفه ي سراسري رو غير فعال ميکنن تا مشکلي پيش نياد.
    تو سري 16 و پايينتر، چون فقط يه خونه حافظه براي بردار وقفه(Interrupt Vector) وجود داره، اگه وسط اجراي وقفه؛ يه وقفه ي ديگه بياد، روتين وقفه ي جاري نيمه کاره رها ميشه و ديگه هم برنميگرده تا تمومش کنه.
    اما تو سري 18 چون دوتا خونه براي بردار وقفه وجود داره تحت عنوان وقفه با اولويت بالا و پايين، بستگي داره که شما کدوم وقفه رو چطوري تعريف کنين؟ اگه وقفه اولويت پايين(Low Priority Interrupt - LPI) در حال اجرا باشه، و وقفه با اولويت بالا (High Priority Interrupt - HPI) اتفاق بيفته،LPI متوقف ميشه، HPI انجام ميشه،بعد LPI ادامه پيدا ميکنه. اما اگه دوتا وقفه با اولويت يکسان اتفاق بيفته، وقفه ي جاري نيمه کاره رها ميشه. اميدوارم واضح گفته باشم.

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت



    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

  9. #9
    2012/12/14
    89
    12

    پاسخ : interrupt و اولويت !!

    ممنون
    تو کامپايلر mikroc for pic يک سرويس روتين وقفه بيشتر وجود نداره،براي اينکه چند وقفه چک بشه با فلگ هاي مربوط به وقفه چک بشه درست ميگم
  10. #10
    2007/11/22
    تبریز
    2,483
    492

    پاسخ : interrupt و اولويت !!

    نقل قول نوشته اصلی توسط javad-movahediyan
    ممنون
    تو کامپايلر mikroc for pic يک سرويس روتين وقفه بيشتر وجود نداره،براي اينکه چند وقفه چک بشه با فلگ هاي مربوط به وقفه چک بشه درست ميگم
    بله.اين همون بحث ترتيب نوشته شدن اينتراپتها هست. تو روتين void interrupt هر وقفه اي که قراره اتفاق بيفته،بايد بيت IF (پرچم وقفه اون ماژول) بررسي بشه.
    اولين خط بعد از void interrupt، شما وقفه ي سراسري رو غيرفعال کنين (احتمال زياد بيت اول رجيستر INT_CON با نام GIE)

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت



    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

نمایش نتایج: از 1 به 10 از 10

موضوعات مشابه

  1. >>>مهم<<<|>>>اولويت وقفه ها<<<|>>>مهم<<<
    توسط alizamany74 در انجمن NXP
    پاسخ: 15
    آخرين نوشته: 2014/11/14, 15:12
  2. رشته هاي اولويت دار دانشگاه ها
    توسط Solsal در انجمن مباحث علمی عمومی
    پاسخ: 3
    آخرين نوشته: 2011/11/11, 19:28
  3. اولويت وقفه تايمر
    توسط hamed.rahimi در انجمن میکروکنترلرهای AVR
    پاسخ: 3
    آخرين نوشته: 2011/10/01, 11:26
  4. اولويت هاي علم و فناوري کشور
    توسط pesar.sabz.shad در انجمن رباتيك و مكاترونيك
    پاسخ: 0
    آخرين نوشته: 2010/11/04, 15:48
  5. اولويت هاي خريد لپ تاپ
    توسط hess در انجمن سخت افزار کامپیوتر
    پاسخ: 2
    آخرين نوشته: 2008/12/02, 15:06

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •